如何在Javascript中修复此缺少的分号语法错误?

Pet*_*son 47 javascript internet-explorer syntax-error

一位朋友为我写了一些代码,并且有一个文件中有一个奇怪的语法错误.经过一段时间的搜索,我把它缩小到这部分代码,它应该重现错误:

var say = funct?on(message) {
  alert(message);
  return message;
};

say(say("Goodbye!"));
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我在Internet Explorer控制台中看到一个错误SCRIPT1004: Expected ';'.我没有看到任何地方丢失分号,我无法想象我想把它放在哪里.

它在哪里可以看到分号?为什么它会在那里分号?

Pee*_*Haa 85

您的问题是iin函数是unicode字符i.如果将其更改为"正常",i它应该可以正常工作.

但现在我想知道黑客:)你在那里得到一个unicode角色:P

js中的unicode错误

  • 当我看着剪断的jsfiddle时,我注意到了它."і"周围的选择框比周围的其他字符大一点. (4认同)
  • 出于好奇,您如何找出确切的问题所在? (2认同)
  • @CCCason 只是因为代码看起来没问题。只需将代码复制/粘贴到显示字符代码的体面文本编辑器中即可。如果我想变得很酷,也可以使用十六进制编辑器;) (2认同)
  • @CCCason:突出显示问题中的“i”,右键单击,然后选择“搜索”。 (2认同)

tft*_*ftd 16

你拼错了"功能":)

var say = function(message){
    alert(message);
    return message;
};

say(say("Goodbye!"));
Run Code Online (Sandbox Code Playgroud)

你插了funct?on:)

  • @Rocket不在他的情况下.他有一个看似正常的角色,但事实并非如此.甚至我的IDE用他的代码变红了:) (3认同)
  • `"functіon"==="function"` (2认同)

The*_*pha 7

我已经在我的记事本++中复制并粘贴了它,你的代码在我的记事本++中看起来像这样,重新输入你的函数关键字,我被替换为?

var say = funct?on(message) {
      alert(message);
      return message;
    };
    say(say("Goodbye!"));
Run Code Online (Sandbox Code Playgroud)


Roc*_*mat 6

我将你的代码复制到了jsfiddle中,Chrome也给出了错误.我删除了"功能"这个词,并重新输入了"功能",它运行正常.

那里必须有一些额外的性格.