雙邏輯非 操作符

2021-07-31 16:02:33 字數 543 閱讀 6837

雙邏輯非操作,會把乙個值(數字,字串…..)轉換為布林值。第一次邏輯非操作取反的布林,第二次獲得最初元素本身對應的布林。

alert(!!false);     //false

alert(!!"blue"); //true

alert(!!0); //false

alert(!!nan) //false

alert(!!12345) //true

雙邏輯非操作符提高了程式執行的效率,比先儲存後訪問的效果更好。

var res1 = (0 && undefined);     //0

var res2 = !!(0 && undefined); //false

/*對於 res1 我們每次還需要隱式轉換成布林值,if(boolean(res1)),而 res2 已經是布林值,所以使用雙邏輯非操作符提高了程式執行的效率。

這裡說的先儲存後的訪問效果好,說的就是先儲存布林值。

*/

雙邏輯非操作符

1.邏輯非操作符有乙個嘆號 表示,針對任何資料型別,這個操作符都會返回乙個布林值。邏輯非操作符會先將它的運算元轉換為乙個布林值,然後再對其求反。alert flase true alert blue false alert 0 true alert nan true alert 12345 fals...

邏輯操作符

邏輯操作符 與 或 非 邏輯與 只有兩個條件同時滿足的時候才會返回true,兩個條件都是假的返回的結果是false 即 一假即假 當邏輯語操作不是布林值的時候,返回值就不一定是布林值,可分為以下幾種情況 1 當第乙個運算元據是物件時,返回第二個運算元據的值。2 當第二個運算元據為物件時,如果第乙個運...

邏輯操作符

邏輯操作符 只要有乙個條件不成立,返回false 說明 在有乙個運算元不是布林值的情況,邏輯與操作就不一定返回值,此時它遵循下列規則 1 如果第乙個運算元隱士型別轉換後為true,則返回第二個運算元。說明 規則是兩個運算元的情況。例子 console.log 80 50 返回結果 50 2 如果第乙...