第5章 语法
语句相当于句子,表达式相当于短语
标签语句:
continue foo
不是跳转到标签foo所在位置继续执行,而是执行foo循环的下一轮循环break foo
不是跳转到标签foo所在位置继续执行,而是跳出标签foo所在循环代码块,继续执行后面的语句
JSON-P通过将JSON数据传递给函数,将JSON转换为合法的JS语法
[]+{} //"[object Object]"
[]会被强制类型转换为””,{}会被强制类型转换为”[object Object]”{}+[] //0
{}空代码块,+[]显示强制类型转换为0三元运算符和=运算符是右关联的
1
2
3
4
5
6var a=42;
var b="foo";
var c=false;
var d=a&&b||c?c||b?a:c&&b:a; //42
// (a&&b||c)?((c||b)?a:(c&&b)):aASI:自动分号插入
对于ES6来说,函数参数被省略或被赋值为undefined效果一样,但是arguments数组不同,一个为空,一个出现值为undefined的单元
不要同时访问命名参数和其对应的arguments数组单元
finally中抛出异常或者有返回值,都会覆盖try和catch中的return返回值
switch中的case运算符是===,case的表达式即使结果为真值,但是不是严格意义上的true,则不会执行。