Javascript中分号的问题

Js语句是执行行为(action)的语法结构和命令;
语句之间可以用分号进行分割;
当存在换行符(line break)时,在大多数情况下可以省略分号。
但有特殊情况

alert("There will be an error")

[1, 2].forEach(alert)

此时就不会显示1,2且控制台会报错,因为 JavaScript 并不会在方括号 […] 前添加一个隐式的分号。所以,因为没有自动插入分号,代码被视为了一条简单的语句,我们从引擎看到的是这样的:

alert("There will be an error")[1, 2].forEach(alert)

但它应该是两条语句,而不是一条。这种情况下的合并是不对的,所以造成错误。

若加上分号

alert("All fine now");
[1, 2].forEach(alert)

总结:
日常写js代码时最好每条语句后加分号;

猜你喜欢

转载自blog.csdn.net/qq_51517771/article/details/120396695