分号加与不加完全取决于个人习惯,但为了代码稳定(解析出错)还是建议使用分号断句。
JavaScript自动加分号规则:
1.当有换行符(包括含有换行符的多行注释),并且下一个token没法跟前面的语法匹配时,会自动补分号。
2.当有}时,如果缺少分号,会补分号。
3.当程序源代码结束时,如果缺少分号,会补分号。
结论:
1.在return、break、continue、后自增、后自减五种语句中,换行符可以完全替代分号的作用。
2.var if do while for continue break return with switch throw try debugger几种关键字开头的语句,以及空语句,上一行加不加分号影响不大。
3.凡表达式语句和函数表达式语句,后面不加分号非常危险,情况极其复杂。
4.凡(和[开头的语句,前面不加分号极度危险。
通常情况下,解释器会自动添加分号,但有些时候不加分号还是容易引起解析错误,特别是在代码压缩的情况下,所以出于严谨考虑,还是推荐在语句结束时添加分号。
JavaScript语法上不要求一定以分号结尾
但由于大部分JavaScript代码上线前需要压缩,而不加分号在某些情况下,压缩之后代码将会改变原有含义,导致不可用
所以建议语句结束使用分号,这样更规范