为什么Δ不是JavaScript中的有效标识符?

时间:2014-06-29 20:47:02

标签: javascript unicode identifier

根据this,JavaScript允许Unicode字符作为标识符。但是,这就是Node处理它的方式。

  > var ∆ = 6;
  > ...

我也把它放在identifier validator中,它同意不允许“Δ”。

我想我的问题是“Δ有什么特别之处?”

2 个答案:

答案 0 :(得分:7)

那不是U+0394 GREEK CAPITAL LETTER DELTA;它是U+2206 INCREMENT,这是一个数学符号,而不是一封信。

答案 1 :(得分:2)

JavaScript标识符可以包含任何“Unicode Letter”,这意味着

  

Unicode类别中的任何字符“大写字母(Lu)”,“小写字母(Ll)”,“标题字母(Lt)”,“修饰符字母(Lm)”,“其他字母(Lo)”或“字母编号(Nl)”。

现在,可以做的是:

var \u0394 = 0;

0394是Δ的Unicode值。显然,这并不令人满意,但从语法上来说还是可以的。

编辑 - 像往常一样SLaks是正确的;你实际上可以做到这一点:

var Δ = 0;

当你得到正确的Δ版本时。 (在我当前的字体中,数学版本更漂亮。)