为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这段js代码加不加分号输出不同?

为什么这段js代码加不加分号输出不同?

慕姐4208626 2019-05-11 09:12:06
vara=1varb=2[a,b]=[b,a+b]console.log(a,b)vara=1;varb=2;[a,b]=[b,a+b]console.log(a,b)上面这两段代码,不加分号和加分号,在控制台输出为什么会不一样?我个人习惯以前从来不加分号,是否意味着这个习惯不好呢?
查看完整描述

2 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

上面那段代码你一行行输入,而不是整段复制,跟下面那段代码是一样的效果。而你在IDE中写代码,加不加分号都能是一样的效果是因为ASI机制。
JavaScript中的ASI机制,允许我们省略分号。ASI机制不是说在解析过程中解析器自动把分号添加到代码中,而是说解析器除了分号还会以换行为基础按一定的规则作为断句的依据,从而保证解析的正确性。
建议加上分号。不仅仅是为了自己以后改bug,重构,调试等等,也为了使以后团队合作中更有效率
                            
查看完整回答
反对 回复 2019-05-11
  • 2 回答
  • 0 关注
  • 459 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信