[ JS系列5 ] 可选的分号

作者 : 开心源码 本文共950个字,预计阅读时间需要3分钟 发布时间: 2022-05-11 共63人阅读

Javascript用分号;将语句分隔开,这对加强代码的可读性和整洁性是非常重要的。

有些地方能省略分号,有些地方则不可以省略分号。

//两条语句使用两行书写,第一个分号能省略a = 3;b = 4;//两条语句使用一行书写,第一个分号不可以省略a = 3; b = 4;

但javascript并不是在所有换行处都填补分号,只有在缺少了分号就无法正确解析代码时,javascript才会填补分号。换句话说,假如当前语句和随后的非空格字符不可以当成一个整体来解析的话,javascript就在当前语句行结束处填补分号

var aa=3console.log(a)

javascript将其解析为:

var a;a = 3;console.log(a);

这种语句的分隔规则会导致少量意想不到的情形

var y = x + f(a+b).toString

javascript将其解析为:

var y = x + f(a+b).toString

因而,为了可以让上述代码解析成两条不同的语句,必需手动填写行尾的显式分号

通常来讲,假如一条语句以'('、'['、'/'、'+'、'-'等符号开始,那么它极有可可以和前一条语句合一起解析

两个例外

假如当前语句和下一行语句无法合并解析,javascript会在第一行后填补分号,这是通使用规则,但有两个例外

【1】第一个例外是涉及return、break、continue、throw语句的场景中。假如这四个关键字后紧跟着换行,javascript会在换行处填补分号

returntrue;

javascript将其解析为:

return;true;

而代码的本意是:

return true;

【2】第二个例外是在涉及++和–运算符时,假如将其使用作后缀表达式,它和表达式应该同一行。否则,行尾将填补分号,同时++或者–将作为下一行代码的前缀操作符并与之一起解析

x++y

javascript将其解析为:

x;++y;

而代码的本意是:

x++;y;

尽管分号不是必需的,但最好不要省略它,由于加上分号能避免很多错误,代码行结尾处没有分号会导致压缩错误。加上分号也会在某些情况下增进代码的性可以,由于这样解析器就不必再花时间推测应该在哪里插入分号了。

[ JS系列5 ] 可选的分号

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » [ JS系列5 ] 可选的分号

发表回复