为什么你不应该在每组花括号后添加分号?我认为这是JavaScript中的规则。例如,在这段代码片段中,由于在初始if语句之后使用分号,因此它不起作用,但是在else语句之后的分号是正常的。
function a() {
if (var >= length) {
count =
var / length;
};
else {
count = 0
};

答案 0 :(得分:2)
在if
和else
之间添加分号有效地将它们分成两个单独的块。
if
块可以独立存在,但不能存在else
块,因为else
取决于if
语句中的条件。
答案 1 :(得分:1)
因为整个表达式包含if
块。在表达式完成后引入了分号(并且没有必要发布if
花括号)。在if
之后添加分号时,您将缩短整个表达式。
从某种意义上说,你是这样说的:
if (foo === bar) {
//do something
} /** You: Ok stop doing stuff**/;
/**
Javascript: Ok! I'm done
**/
else { // Javascript: Wait, what is this crap
//nothing's gonna happen
}
答案 2 :(得分:1)
第一个}
后面的分号创建一个空语句。好像你写的那样:
alert('test');
;
这个额外的"空"语句将if
与else
分开,因此else
块变得毫无意义。