You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript检测单词首尾字符是否相同?附代码示例

检测单词首尾字符是否相同的正确实现

嘿,我看你在尝试实现一个检测输入文本首尾字符是否相同的功能,咱们先拆解下你现有代码里的问题,再给出可行的解决方案~

你的代码里的核心问题

你写的startsWith(endsWith())这种写法是不对的:

  • startsWith()和endsWith()是字符串的实例方法,必须通过具体的字符串来调用(比如value.startsWith(...))
  • 这两个方法需要传入要检测的字符/字符串作为参数,而不是相互嵌套调用

修正后的实现方案

我们只需要获取输入字符串的第一个字符和最后一个字符,直接比较它们是否相等就可以了。这里还可以做一些边界处理(比如空输入的情况),让功能更健壮。

完整代码示例

<input id="input" style="margin:20px;" type="text"><br>
<button id="button" onclick="Check();">Check</button>
<p id="demo" style="color:black;">Answer</p>
function Check() {
  // 获取输入框的值,并去除前后空格
  let value = document.getElementById("input").value.trim();
  
  // 处理空输入的情况
  if (value.length === 0) {
    alert("请输入内容哦!");
    document.getElementById("demo").textContent = "Answer: 请输入内容";
    return;
  }
  
  // 获取第一个字符和最后一个字符
  const firstChar = value[0];
  const lastChar = value[value.length - 1];
  
  // 比较并给出反馈
  if (firstChar === lastChar) {
    alert("Yes");
    document.getElementById("demo").textContent = "Answer: Yes";
  } else {
    alert("No");
    document.getElementById("demo").textContent = "Answer: No";
  }
}

补充说明

除了直接通过索引获取字符,你也可以用startsWith和endsWith来实现,写法会更直观:

// 替代字符索引比较的写法
if (value.startsWith(value.slice(-1))) {
  // 首尾相同的逻辑
}

value.slice(-1)会获取字符串的最后一个字符,然后用startsWith判断开头是否和这个字符一致,效果和直接比较索引是一样的。

内容的提问来源于stack exchange,提问作者user9817230

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:18:21