[学习笔记]Javascript可选的分号
2023-09-11 14:18:07 时间
1.前言
由于Javascript有自动识别一句语句的结尾,但是缺少必要分号作为结尾符,会降低代码的可读性和整洁性。通过javascript权威指南By淘宝前端团队译,这分号还算比较好玩的。
2.样例
2.1 两句语句有两行的书写
a = 3; //第一行的分号可以省略 b = 4;
2.2 两句语句一行的书写
a = 3; b = 4; //第一个分号不能省略,否则提示Uncaught SyntaxError: Unexpected identifier
2.3 容易引起误解的写法
2.3.1
var a a = 3 console.log(a)
等价于 var a; a = 3;console.log(a);
2.3.2
var y = x + f
(a+b).toString()
等价于var y = x + f(a+b).toString(0;
2.4 通常来讲,如果一条语句以'(','[','/','+','-' 开始的,那么它可能会和前一条语句合在一起解析,后三种不常见,但是前两者比较常见,所以可以保守地在语句前面多加一个分号。
var x = 0 ;[x,x+1].forEach(console.log);
2.5 方法结束加不加分号都可以,安装java,C/C++的习惯是不加。
function fun{ } //};也是可以的。
2.6 如果前语句和下一行语句无法合并解析,JS则会在第一行后填补分号,这是通常规则,But有两个例外
2.6.1 第一个例外是涉及到return、break和continue语句
return true;
会被解析成return; true; 而代码的本意是return true;
2.6.2 涉及“++”和“--”
x ++ y
等价于x; ++y; 而不是x++; y
3. 总结
尽量写规范一些,防止编译器理解错你的表达。
相关文章
- javascript笔记
- Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)
- 《JavaScript设计模式与开发实践》笔记第一章
- 【学习笔记03】JavaScript调试方式
- 【学习笔记04】JavaScript数据类型
- 【学习笔记05】JavaScript数据类型的检测
- 【学习笔记08】JavaScript运算符和算数运算符
- 【学习笔记09】:JavaScript单引号、双引号和反引号的区别
- 【学习笔记10】JavaScript三元运算符和比较运算符
- 【学习笔记13】JavaScript的判断语法
- 【学习笔记14】JavaScript的循坏语句
- 【学习笔记15】JavaScript的函数
- 【学习笔记28】JavaScript数组字符串面试题
- 【学习笔记29】JavaScript数据类型之间的面试题
- 【学习笔记32】JavaScript数字的基本方法和进制转换
- 【学习笔记35】JavaScript计算两个指定日期的时间差
- 【学习笔记38】JavaScript中的本地存储
- 【学习笔记44】JavaScript的事件传播
- 【学习笔记65】JavaScript的继承
- javascript学习笔记(一)-廖雪峰教程
- javascript高级程序设计阅读笔记(一)
- JavaScript - vue.js / nuxt.js / uni-app / 微信小程序 js 时间戳与日期格式互转(时间戳转日期字符串格式,日期回转时间戳格式)支持转为日期字符串后自动补0
- 简单粗暴的JavaScript笔记-1
- Javascript 笔记与总结(2-16)事件对象
- Javascript 笔记与总结(2-15)结构、样式、行为分离
- Javascript 笔记与总结(2-12)联动菜单
- JavaScript权威指南学习笔记4
- JavaScript权威指南学习笔记6
- Javascript: hash tables in javascript
- 学习笔记---Javascript事件Event、IE浏览器下的拖拽效果
- JavaScript DOM编程艺术学习笔记(一)
- JavaScript学习笔记之一(ECMAScript: 基础语法部分)
- JavaScript学习笔记之二(DOM API)
- javascript学习笔记
- 《Javascript权威指南》学习笔记之十九--HTML5 DOM新标准---处理文档元信息和管理交互能力
- 【javascript】如何在Javascript中创造map对象?
- javascript 的学习笔记(第一天)
- JavaScript高级程序设计学习笔记--事件