Js语句后加不加分号;

时间: 2019-07-12阅读: 238标签: 语句

问题

前一阵子猛然想到一个问题,JS有分号自动补全(ASI)机制,在写JS时我是习惯性在语句后面加上分号,在块语句后面不加分号。那么如果没有加分号的话,在什么情况下会出现问题?在JS语句后到底是应该加分号还是不加分号?


解决问题

面对这个问题,我来了兴趣。于是在网上查了一些资料。关于加不加分号的问题,知乎上一些回答这个问题的大佬普遍意见是,喜欢就好。嗯,很直接。
关于不加分号容易产生问题的地方,我在看了多个地方的贴子总结了一下,基本就三个地方出现问题比较多:
1)如果下一行的第一个token是 ( , [ , / , + , - 这五个字符之一的话, Javascript 将不会自动在上一行句尾加上分号。所以,当下一行的第一个token是以上字符时,应当在上一行或者行首加上分号
2)continue、return、break、throw后自动插入分号。所以当 return 出一个值,千万不要将那个值与 return 不在同一行,不然返回的结果是 undefined 而不是你期望的值。
3)++ , -- 后缀表达式作为新行开始,会在行首自动插入分号,
关于我自己每回没有在块语句后面没有加分号,对于我这个强迫症来说是不是不严谨的问题,我也在一篇贴子中找到了答案, 那就是 {...} 属于块语句,而按照定义块语句是不需要分号结尾的,不管是不是在一行 , 嗯,我果然没有错。


总结

看了那么多贴子后,我感觉还是在语句后面加分号比较好,毕竟虽然麻烦一点,但是看得舒服(个人感觉),而且可以避免一些不必要的问题。


吐血推荐

1.站长广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入...

2.休闲娱乐: 网页游戏  直播/交友   H5游戏

链接: http://www.fly63.com/article/detial/4658

Js优化条件判断语句

简单逻辑常用判断,if..else if...else... 中的条件体应该总是按照从最大概率到最小概率排列,以保证理论速度最快,switch/case 条件数量较大的话,就建议选用

Js中被嫌弃的eval和with

eval和with经常被嫌弃,好像它们的存在就是错误。在CSS中,表格被嫌弃,在网页中只是用表格来展示数据,而不是做布局,都可能被斥为不规范,矫枉过正。那关于eval和with到底是什么情况呢?本文将详细介绍eval()函数和with语句

JavaScript 语句解析

在 HTML 中,JavaScript 语句是由 web 浏览器执行的指令。JavaScript 语句可以用花括号({...})组合在代码块中。JavaScript 语句常常通过某个关键词来标识需要执行的 JavaScript 动作。

JS构造函数中有return

在JavaScript中,创建对象的方式包括两种:对象字面量和使用new表达式。对象字面量是一种灵活方便的书写方式,例如:new表达式是配合构造函数使用的:

js中if判断语句执行原因--数据类型转换原理

相信我们程序员平时写代码用的最多的逻辑就是if语句了吧,可你知道他的原理是什么吗,其实这跟Boolean()这个方法有关,此方法为自动执行(在需要判定Boolean的语句中中自动执行)

js中return/break语句的妙用

在JavaScript里面,一般我们想让程序在function里面执行到一半时,经过判断或者完成某种操作后停止执行后面的代码,会用return结束掉function。可以在while中间加入多个if()break作为断点,控制逻辑的流程。

为什么我更喜欢对象而不是switch语句

最近我正在跟我的团队伙伴讨论如何去处理这种需要根据不同的值去处理不同的情况的方法,通常对于这种情况下,人们喜欢使用switch语句或者使用很多if搭配else if条件。在本文中我将重点介绍第三种方式(我更为喜欢的方法),即使用对象进行快速地查找。

fly63.com版权所有,内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权,请与小编联系!情况属实本人将予以删除!

广告赞助文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全