大多数被禁止在JS变量名称的一部分的字符有特殊含义:为什么#字符在JavaScript中是特殊的?
- &,*%^等都是运营商;
- @用于声明装饰器;
- branches(){} []是语言的重要组成部分;
- _和$没有特殊含义可以很容易地用作变量名称。
#char怎么样?它为什么特别?
大多数被禁止在JS变量名称的一部分的字符有特殊含义:为什么#字符在JavaScript中是特殊的?
#char怎么样?它为什么特别?
#
没什么特别的。它只是许多字符中没有有效的Unicode的其中一个标识符开始或标识符继续。一个更好的问题可能是什么使$
和_
特殊,使他们成为valid identifier parts?
什么可能使它特别的是,它是为数不多的可打印的ASCII字符是作为标识符名称无效之一,但也是不被用作标点符号其他地方的EcmaScript 1.有
`
,其被用作自ES6@
,其被建议用于decorator syntax#
,其被建议用于private field syntax我的猜测是,语言通常不允许变量名中的英镑#
字符,并且JavaScript也效仿。
此外,由于它是在不少 languages中开始评论的角色,因此可以将其视为无意义且可能令人困惑的添加。
它还没有使用过*,就像'@'一样。 – Bergi