JavaScript中,如果一条语句独占一行,通常语句后面的分号可以省略。
省略的规则是:
如果当前行和下一行连接起来不能正确解析的话,JavaScript在解析的时候就会在当前行结尾自动添加分号。
例如:
a=3;
b=4;
第一行的分号是可以去掉的。原因是去掉以后,a=3 连接 b=4, 形成a=3 b=4是无法正确解析的,因此JavaScript解析时会自动在a=3这行结尾添加分号,解析成a=3;b=4;
再举一个例子
var a
a
=
4
alert(a);
JavaScript 会解析为:
var a; a=4; alert(a);
两个例外:
1、如果return、break、continue这个三个关键字后面紧跟换行,JavaScript会在换行处添加分号。
例如:
return
20;
JavaScript 会解析成:
return;20;
2、++、--运算符后面紧跟换行,JavaScript会把运算符作为下一行的前缀解析。
例如
a
++
b;
JavaScript会解析为:
a;++b;而不是a++;b;