一、区分大小写
一切(变量、函数名和操作符)都区分大小写。变量名test和变量名Test分别表示两个不同的变量,而函数名不能使用typeof,因为它 是一个关键字,但 typeOf 则完全可以是一个有效的函数名。
二、标识符
标识符,就是指变量、函数、属性的名字,或者函数的参数,标识符满足下列规则:
1、第一个字符必须是一个字母、下划线(_)或一个美元符号($);
2、其他字符可以是字母、下划线、美元符号或数字。
按照惯例,ECMAScript 标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个单词的
首字母大写,比如
firstSecond
myCar
doSomethingImportant
不能把关键字、保留字、true、false 和 null 用作标识符
三、注释
ECMAScript 使用 C 风格的注释,包括单行注释和块级注释。单行注释以两个斜杠开头,比如
// 单行注释
注释以一个斜杠和一个星号(/*)开头,以一个星号和一个斜杠(*/)结尾,比如
/*
* 这是一个多行
* (块级)注释
*/
上面注释中的第二和第三行都以一个星号开头,但这不是必需的,纯粹是为了提高注释的可读性。
四、严格模式
ECMAScript 5引入了严格模式(strict mode)的概念。严格模式是为JavaScript 定义了一种不同的 解析与执行模型。在严格模式下,一些不确定的行为将得到处理,而且对某些不安全的操作也会抛出错误。要在整个脚本中启用严格模式,可以在顶部添加如下代码:
"use strict";
这行代码看起来像是字符串,而且也没有赋值给任何变量,但其实它是一个编译指示(pragma), 用于告诉支持的 JavaScript 引擎切换到严格模式。这是为不破坏 ECMAScript 3语法而特意选定的语法。
在函数内部的上方包含这条编译指示,也可以指定函数在严格模式下执行:
function doSomething(){
"use strict";
//函数体
}
五、语句
ECMAScript中的语句以一个分号结尾;如果省略分号,则由解析器确定语句的结尾,比如:
var sum = a + b // 即使没有分号也是有效的语句——不推荐
var diff = a - b; // 有效的语句——推荐
虽然语句结尾的分号不是必需的,但我们建议任何时候都不要省略它。
因为加上这个分号可以避免 很多错误(例如不完整的输入),开发人员也可以放心地通过删除多余的空格来压缩 ECMAScript 代码(代码行结尾处没有分号会导致压缩错误)。另外加上分号也会在某些情况下增进代码的性能,因为这样解析器就不必再花时间推测应该在哪里插入分号了。
可以使用C风格的语法把多条语句组合到一个代码块中,即代码块以左花括号({)开头,以右花括号(})结尾:
if (test){
test = false;
alert(test);
}
虽然条件控制语句(如 if 语句)只在执行多条语句的情况下才要求使用代码块,但最佳实践是始终在控制语句中使用代码块——即使代码块中只有一条语句,比如:
if (test)
alert(test); // 有效但容易出错,不要使用
if (test){ // 推荐使用
alert(test);
}
在控制语句中使用代码块可以让编码意图更加清晰,而且也能降低修改代码时出错的几率。