JavaScript 邏輯非運算
■知識點
邏輯非運算(!)直接放在操作數(shù)之前,把操作數(shù)的值轉(zhuǎn)換為布爾值,然后取反并返回。
■實例設計
下面列舉特殊操作數(shù)的邏輯非運算值。
console.log( ! {}); //如果操作數(shù)是對象,則返回false
console.log( ! (n = 5)); //如果操作數(shù)是非0,的任何數(shù)字,則返回false
console.log( ! null); //如果操作數(shù)是null,則返回true
console.log( ! NaN); //如果操作數(shù)是NaN,則返回true
console.log( ! Infinity); //如果操作數(shù)是Infinity,則返回false
console.log( ! ( - Infinity));//如果操作數(shù)是-Infinity,則返回false
console.log( ! undefined); //如果操作數(shù)是undefined,則返回true
如果對于操作數(shù)執(zhí)行兩個邏輯非運算操作,就相當于把操作數(shù)轉(zhuǎn)換為布爾值。
console.log (!0) ; //返回 true
console.log (!!0) ; //返回 false
注意:
邏輯與和邏輯或運算的返回值不必是布爾值,但是邏輯非運算的返回值一定是布爾值。
點擊加載更多評論>>