JavaScript布林運算子原理使用解析
阿新 • • 發佈:2020-05-07
布林運算子分為四種:
- 取反運算子(!)
- 且運算子(&&)
- 或運算子(||)
- 三元運算子( ? 表示式1 : 表示式2 )
取反運算子(!)
用於將任何值轉換為布林值後再變為相反值,即true變false,false變true
取反運算子對以下六個值返回false,其餘都返回true:
- undefined
- null
- ''
- false
- 0
- NaN
如果對一個值取反兩次,則相當於將其轉換為了布林值,與Boolean()函式的作用相同
!!1 等同於Boolean('1')
且運算子(&&)
且運算子用於多個表示式: 表示式1 && 表示式2
運算規則: 如果第一個運運算元返回true,則返回第二個運運算元的值(不是布林值);如果第一個運運算元返回false,則返回第一個運運算元,且不再對第二個運運算元求值(短路)
// 'a'轉換為boolean為true,所以直接返回第二個運運算元''
'a' && ''// ''轉換為boolean為false,所以直接返回第一個運運算元 ''
'' && 'a'
或運算子(||)
或運算子也用於多個表示式的值
運算規則: 如果第一個運運算元的布林值為true,則直接返回第一個運運算元的值;如果第一個運運算元的布林值為false,則返回第二個運運算元的值
// ''的布林值為false,所以這裡返回'b'
'' || 'b'
// 'b'的布林值為true,所以這裡返回'b'
'b' || ''
或運算子常用語為一個變數設定預設值
三元運算子
表示式1 ? 表示式2 : 表示式3;
如果表示式1的布林值為true,則返回表示式2;如果表示式1的布林值為false,則返回表示式3
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。