javascript代码语句结束要不要加分号?

摘要:在 C 语言中,分号是语句结束的标志,在语句结束的地方一定要以分号结束。而 JavaScript 的分号却是可选的,若语句都各占一行,则可以省略分号。avaScript 中的 ASI 机制,允许我们省略分号。ASI 机制不是说在解析过程中解析器自动把分号添加到代码中

在 C 语言中,分号是语句结束的标志,在语句结束的地方一定要以分号结束。而 JavaScript 的分号却是可选的,若语句都各占一行,则可以省略分号。

JavaScript 中的 ASI 机制,允许我们省略分号。ASI 机制不是说在解析过程中解析器自动把分号添加到代码中,而是说解析器除了分号还会以换行为基础按一定的规则作为断句的依据,从而保证解析的正确性。


ASI 规则

新行并入当前行构成非法语句时,自动插入分号

continue, return, break, throw 后自动插入分号

return => return; 
a+b a+b;

++, -- 后缀表达式作为新行开始,会在行首自动插入分号代码块的最后一个语句会自动插入分号


注意

新行以 ( [ / + - * % , . 开始,很容易与上一行未加分号的代码成整体而一起解析,这明显不是我们想要的结果


结论

为增强代码可读性,减少歧义,个人意见是在语句结束时加上分号

PS:

不要将 ++ 或 -- 放在同一行

如果 return 后有参数,不要将参数放在独立的行不要将括号的开始放在新的一行,理由为上一条


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_7977