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

JavaScript函数与字符串问题:如何在函数内正确使用startsWith方法

修复方案

你可以直接使用调整后的代码实现需求:

function werewolfCheck(name) {
  if (name.startsWith('were')) {
    return 'It is a werewolf';
  } else {
    return 'Just a regular person';
  }
}

// 直接调用函数即可,不需要额外重新声明同名变量
console.log(werewolfCheck('werebrian')); // 输出:It is a werewolf

原代码的问题点

  • 函数内部使用了未定义的变量str,你需要判断的是传入的参数name,所以应该调用name.startsWith('were')
  • startsWith方法的返回值本身就是布尔值(true/false),不需要再和name做全等判断,直接用它作为if的判断条件即可
  • 函数定义完成后,你用var werewolfCheck = ...重新声明了同名变量,把之前定义的函数直接覆盖了,导致后续调用逻辑完全出错

可选简化写法

如果你想精简代码,可以直接用三元表达式返回结果:

const werewolfCheck = name => name.startsWith('were') ? 'It is a werewolf' : 'Just a regular person';

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 12:45:01