JS代码要不要加分号

首先,我们来了解下javascript的自动填充规则

在说要不要写分号之前,先了解一下javascript自动填补分号的规则。

在《javascript权威指南》中有一段话“如果一条语句以“(”、“[”、“/”、“+”、或“-”开始,那么它极有可能和前一条语句合在一起解释。”,写javascript的时候,如果每条语句都独自写成一行,是不需要写分号的,但是下一行如果遇到上面提到的符号,javascript可能会与下一行合并解释。其中以“/”、“+”和“-”开头的语句在实现项目中比较少见,以“(”和“[”开头的则非常常见。下面各找了一个例子来说明。

1. 以“(”开头的情况:
a = b
(function() {

})()

javascript会解释成:

a = b(function() {

})();
以" [ "开头的情况:
a = function() {
 
}
[1,2,3].forEach(function(item) {
 
});

javascript会解释成:

a = function() {
}[1,2,3].forEach(function(item) {
 
});
以" / "开头的情况 :
a = 'abc'
/[a-z]/.test(a)

期望的结果为true,但是javascript会解释成,接着就报错了:

a = ‘abc’/[a-z]/.test(a);
以 " + " 开头的情况 :
a = b
+c

javascript会解释成

a = b + c;
以 " - " 开头的情况 :
a = b
-c

javascript会解释成

a = b - c;
如果在return、break、continue、throw等关键字后面换行,javascript会在换行处填补分号。如:
return
{
    a: 1
}

会解释成:

return;
{
    a: 1
}

如果“++”或“–”运算符作为表达式的后缀时,表达式应该写在同一行,否则也会解释有误

例如:

x
++
y

会解释成:

1
2
x;
++y;

而不是

x++;
y;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值