"&&"脚祟,"||","!"
undefined强饮,null由桌,NaN,""邮丰,0行您,false ==> false
其余表達(dá)式轉(zhuǎn)換為布爾值的時(shí)候都為真
"&&",從左到右遇到真就跳到下一個(gè)表達(dá)式,遇到假或到最后一個(gè)表達(dá)式就返回其值剪廉。("||"娃循,與其相反)
執(zhí)行時(shí)先看第一表達(dá)式轉(zhuǎn)換成布爾值的結(jié)果,如果結(jié)果為真斗蒋,那么它會(huì)看第二個(gè)表達(dá)式轉(zhuǎn)換為布爾值的結(jié)果捌斧,然后如果只有兩個(gè)表達(dá)式的話,只看到第二個(gè)表達(dá)式泉沾,就可以返回該表達(dá)式運(yùn)算完的值了捞蚂。
var a = 1 && 2;
console.log(a);//2
var a = 1 && 2 && 3;
console.log(a);//3
var a = 1 && 2 + 2;
console.log(a);//4
var a = 1 && 0 && 2;
console.log(a);//0
var a = 1 && false && 2;
console.log(a);//false
&&短路語(yǔ)句運(yùn)用
2 > 1 && console.log('aa');
如果前面條件表達(dá)式成立(2>1),那么就執(zhí)行后面的表達(dá)式跷究。
||運(yùn)用
& | 姓迅!
&運(yùn)算,比較二進(jìn)制俊马,在等位上丁存,相同為1,不同為0柴我。
例如:
- 1和2 二進(jìn)制為 01和10解寝,即
01
10
--
00 - 1和3 二進(jìn)制為 01和11,即
01
11
--
01
var num = 1 & 2;
console.log(num);//0
var num = 1 & 3;
console.log(num);//1
"||"寫兼容
div.onclick = function(e){
var event = e || window.event;//IE與非IE艘儒。聋伦。。
}
"!"轉(zhuǎn)化為布爾值再取反
var a = !123;
console.log(a);//false
"!!"轉(zhuǎn)化為布爾值
var a = !!123;
console.log(a);//true