《JavaScript权威指南(第6版)》——第2章词法结构总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010011236/article/details/85255884

一、基本概念

  1. 直接量:就是程序中直接使用的数据值。
// 如
12;
  1. 标识符(就是用来命名的):只能以字母、下划线(_)、美元符号($)开头,后可接数字、下划线、美元符号、字母。
  2. 分号(分隔符)可选
    这意味着可以省略所有语句的分隔符(;)吗?当然不是
    注意:
  • 在js中,如果语句各自独占一行,通常可以省略语句之间的分号(程序结尾或右花括号"}"之前的分号也可以省略);
  • 只有在缺少了分号就无法正确解析代码的时候,js在会填充分号,即如果当前语句和随后的非空格字符不能当成一个整体来解析的话,js就在当前语句行结束处填充分号。
var a
a
=
3
console.log(a)

js会将其解析为:

var a; a = 3; console.log(a);
  • 如果当前语句和下一行语句无法合并解析,js则在第一行后填充分号,这是通用规则。
    但是这条规则有两个例外:

i. return、break、continue后紧跟换行,js会在换行处填补分号。同时这种错误很难排查。

return
true
// 会解析成如下语句
return; true;

ii. 涉及 “++” 和 “–” 运算符时,如果它和表达式不在同一行,则行尾将添加分号,同时 “++” 或 “–” 将
作为下一行代码的前缀。

x
++
y
// 将解析为
x; ++y;

**总结:**完整的 js 语句可以省略分号(;)。

猜你喜欢

转载自blog.csdn.net/u010011236/article/details/85255884
今日推荐