JavaScript兩個歎號(!!)

admin發表於2018-08-19

在一些程式碼中,經常會出現兩個歎號一起用的情況,下面分析一下它的作用。

歎號是邏輯非運算子,如果運算數是true,則返回false,否則返回true。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(!false);
console.log(!true);

使用兩個邏輯邏輯非(!!)元素符號,有點多此一舉的感覺。

(1).如果運算元是true,那麼返回值依然是true。

(2).如果運算元是false,那麼返回值依然是false。

其實這是有原因的,如果運算元是null或者undefined,兩個邏輯非運算子可以返回false。

這樣可以便於一些操作,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(!!undefined);
console.log(!!null);

也就是說我們可以保證輸出結果運算元對應的布林值,比如操作是undefined,那麼它對應的布林值是false。


相關文章