本文详细解析 JavaScript 中变量命名的基本规则,包括合法字符、数字使用及中文标识符的支持。同时介绍了单行与多行注释的标准写法,并指出 HTML 兼容注释的特殊行为及运算符歧义问题,帮助开发者编写规范且易读的代码。
JavaScript 变量命名规范
标识符的命名需遵循以下基本规则:
首字符可以是任意 Unicode 字母,以及美元符号($)和下划线(_)。
从第二个字符开始,允许使用数字。
以下示例均为合法的标识符:
arg0 _tmp $elem π
以下示例则属于非法标识符:
1a 23 *** a+b -d
中文字符在 JavaScript 中也是合法的标识符,可直接用作变量名。
var 临时变量 = 1;
保留字列表
JavaScript有一些保留字,不能用作标识符:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。
注释语法与特殊处理
此外,尽管 Infinity、NaN 和 undefined 并非严格意义上的保留字,但由于它们具有特定的语言含义,建议避免将其用作标识符。 注释是源码中被 JavaScript 引擎忽略的部分,主要用于解释代码逻辑。JavaScript 支持两种标准注释:以 // 开头的单行注释,以及包裹在 /* 和 */ 之间的多行注释。
// 这是单行注释
/* 这是 多行 注释 */
本教程后续代码部分将采用这两种形式来展示代码运行结果及注意事项。
此外,出于历史兼容性考虑,JavaScript 也支持 HTML 风格的注释,即 <!-- 和 --> 被视为单行注释。
x = 1; <!-- x = 2; --> x = 3;
在上述代码中,仅 x = 1 会执行,其余部分均被注释忽略。
需要注意的是,--> 仅在位于行首时才被解析为单行注释的开始,否则它会被视为减后运算符(--)与大于运算符(>)的组合。
注释运算符歧义示例
function countdown(n) {
while (n --> 0) console.log(n);
}
countdown(3)
// 2
// 1
// 0
例如,n --> 0 会被解析为 n-- > 0,因此输出结果为 2、1、0。
以上即为 JavaScript 变量命名规范与注释语法的完整介绍,希望能为您的开发工作提供帮助。