JavaScript 自动添加分号机制的解惑

自从知道了JavaScript拥有自动添加分号的机制之后,在偶然间看到代码:

var

s = 1,

b = 2,

c = 3;

这样的代码,产生疑惑,自动添加分号机制会不会在var处自动添加分号使其变成

var;产生这样的断句作用(大部分使用JavaScript的人都知道分行return这种写法会被这个自动添加分号的机制带到坑里)然而机制的本身实际上是判断语句的完整性,也就是说在看到var之后,判断系统将var归类为还未完成的语句,var是变量的声明,后面并没有跟上变量,语句还并未完成所以不会添加分号,而return这样的语句是可以直接执行的,(即return;这样的形式也是可以直接执行的)将会被判断为语句是完整的,自动添加上;

发表评论

电子邮件地址不会被公开。 必填项已用*标注