JavaScript布爾運(yùn)算符原理使用解析
布爾運(yùn)算符分為四種:
取反運(yùn)算符(!) 且運(yùn)算符(&&) 或運(yùn)算符(||) 三元運(yùn)算符( ? 表達(dá)式1 : 表達(dá)式2 )取反運(yùn)算符(!)
用于將任何值轉(zhuǎn)換為布爾值后再變?yōu)橄喾粗?即true變false,false變true
取反運(yùn)算符對以下六個(gè)值返回false,其余都返回true:
undefined null ’’ false 0 NaN如果對一個(gè)值取反兩次,則相當(dāng)于將其轉(zhuǎn)換為了布爾值,與Boolean()函數(shù)的作用相同
!!1 等同于Boolean(’1’)
且運(yùn)算符(&&)
且運(yùn)算符用于多個(gè)表達(dá)式: 表達(dá)式1 && 表達(dá)式2
運(yùn)算規(guī)則: 如果第一個(gè)運(yùn)算子返回true,則返回第二個(gè)運(yùn)算子的值(不是布爾值);如果第一個(gè)運(yùn)算子返回false,則返回第一個(gè)運(yùn)算子,且不再對第二個(gè)運(yùn)算子求值(短路)
// ’a’轉(zhuǎn)換為boolean為true,所以直接返回第二個(gè)運(yùn)算子’’’a’ && ’’
// ’’轉(zhuǎn)換為boolean為false,所以直接返回第一個(gè)運(yùn)算子 ’’’’ && ’a’
或運(yùn)算符(||)
或運(yùn)算符也用于多個(gè)表達(dá)式的值
運(yùn)算規(guī)則: 如果第一個(gè)運(yùn)算子的布爾值為true,則直接返回第一個(gè)運(yùn)算子的值;如果第一個(gè)運(yùn)算子的布爾值為false,則返回第二個(gè)運(yùn)算子的值
// ’’的布爾值為false,所以這里返回’b’’’ || ’b’// ’b’的布爾值為true,所以這里返回’b’’b’ || ’’
或運(yùn)算符常用語為一個(gè)變量設(shè)置默認(rèn)值
三元運(yùn)算符
表達(dá)式1 ? 表達(dá)式2 : 表達(dá)式3;
如果表達(dá)式1的布爾值為true,則返回表達(dá)式2;如果表達(dá)式1的布爾值為false,則返回表達(dá)式3
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. PHP驗(yàn)證碼工具-Securimage2. Vue 實(shí)現(xiàn)對quill-editor組件中的工具欄添加title3. JavaScript實(shí)現(xiàn)簡單的彈窗效果4. 我所理解的JavaScript中的this指向5. javascript實(shí)現(xiàn)貪吃蛇小練習(xí)6. PHP利用curl發(fā)送HTTP請求的實(shí)例代碼7. Java commons-httpclient如果實(shí)現(xiàn)get及post請求8. PHP單件模式和命令鏈模式的基礎(chǔ)知識(shí)9. 一文帶你徹底理解Java序列化和反序列化10. js實(shí)現(xiàn)碰撞檢測

網(wǎng)公網(wǎng)安備