逻辑运算
一般语言中,逻辑运算与布尔元算是等义的,其运算元与目标类型都是布尔值。JavaScript当然支持这种纯布尔运算,不但如此,JavaScript还包括另外一种逻辑运算,它的表达式结果是不确定的。
只有“逻辑(||)和逻辑(&&)”两种运算能做这样的事。他们的使用方法与运算逻辑与基本的布尔运算一致,例如:
var str = 'hello';
var obj = {};
x = str || obj //x = str
y = str && obj //y = {}
这种运算的特别之处在于:运算符“||”与“&&”即不改变运算元的数据类型,也不强制运算结果的数据类型。除此之外,还有以下的两条特性:
- 运算符会将运算元理解为布尔值,以进行布尔运算。
- 运算过程是支持布尔短路的。
匿名函数调用解析
一:调用方式:
(1.function(2.){
//todo
}(3.))
在该示例中,靠近1的为强制运算符(其作用返回调用结果),靠近2的为函数参数占位符,靠近3的为调用函数运算符。
二:调用方式:
(1.function(2.){
//todo
})(3.);
在该示例中,靠近1的为强制运算符(起作用是返回函数自身),2和上面一样为函数参数的占位符,靠近3的为调用函数运算符。
详情请见2.4 P61.