
這篇文章給大家分享的是有關(guān)js中bool值的如何轉(zhuǎn)換的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

為企業(yè)提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、網(wǎng)站優(yōu)化、營銷型網(wǎng)站建設(shè)、競價托管、品牌運(yùn)營等營銷獲客服務(wù)。創(chuàng)新互聯(lián)擁有網(wǎng)絡(luò)營銷運(yùn)營團(tuán)隊,以豐富的互聯(lián)網(wǎng)營銷經(jīng)驗助力企業(yè)精準(zhǔn)獲客,真正落地解決中小企業(yè)營銷獲客難題,做到“讓獲客更簡單”。自創(chuàng)立至今,成功用技術(shù)實力解決了企業(yè)“網(wǎng)站建設(shè)、網(wǎng)絡(luò)品牌塑造、網(wǎng)絡(luò)營銷”三大難題,同時降低了營銷成本,提高了有效客戶轉(zhuǎn)化率,獲得了眾多企業(yè)客戶的高度認(rèn)可!
前言
首先需要知道的是,js中有6個值為false,分別是: 0, '', null, undefined, NaN 和 false, 其他(包括{}, [], Infinity)為true.
可以使用Boolean()函數(shù)或是兩次取非就能獲得對象的布爾值,例如Boolean(undefined)和!!undefined同樣能取得布爾值false,
對于0, '', null, undefined, NaN,{}, [], Infinity求布爾值,分別是false false false false false true true true.
因此我們知道的一點(diǎn)是:對象的布爾值是true,即使是對象{}。
bool值轉(zhuǎn)換
| 數(shù)據(jù)類型 | bool值轉(zhuǎn)化 |
|---|---|
| undefined | undefined 轉(zhuǎn)化為 false |
| Object | null 轉(zhuǎn)化為false,其他為 true |
| Boolean | false 轉(zhuǎn)化為 false,true 轉(zhuǎn)化為 true |
| Number | 0,NaN 轉(zhuǎn)化為false,其他為 true |
| String | "" 轉(zhuǎn)化為 false,其他為 true |
"&&"
javascript中“&&”運(yùn)算符運(yùn)算法則如下:
如果&&左側(cè)表達(dá)式的值為真值,則返回右側(cè)表達(dá)式的值;否則返回左側(cè)表達(dá)式的值。多個&&表達(dá)式一起運(yùn)算時,返回第一個表達(dá)式運(yùn)算為false的值,如果所有表達(dá)式運(yùn)算結(jié)果都為true,則返回最右側(cè)一個表達(dá)式運(yùn)算的值。
const aa = {'name': 'xx'};
const bb = aa && aa.age; // bb輸出為undefined;
let cc;
const dd = cc && cc.name ? cc.name : undefined; // dd輸出為undefined
const dd = cc && cc.name; // dd輸出為undefined;上面兩句代碼的執(zhí)行結(jié)果是一樣的,之前寫代碼的時候一直用上面的方式,但是發(fā)現(xiàn)有些單測覆蓋不到,導(dǎo)致單測分支覆蓋率很低,換下面的方式就可以很好的解決這個問題,這兩句的效果是一樣的。
"||"
javascript中"||"運(yùn)算符的運(yùn)算法則如下:
如果"||"左側(cè)表達(dá)式的值為真值,則返回左側(cè)表達(dá)式的值;否則返回右側(cè)表達(dá)式的值。多個"||"表達(dá)式一起運(yùn)算時,返回第一個表達(dá)式運(yùn)算結(jié)果為true的值,如果所有表達(dá)式運(yùn)算結(jié)果都為false,否則返回最右側(cè)的表達(dá)式的值。
const aa = false || 'xx'; // aa輸出為'xx'
"!!"
"!!"將表達(dá)式進(jìn)行強(qiáng)制轉(zhuǎn)化為bool值的運(yùn)算,運(yùn)算結(jié)果為true或者false。
const aa = 'xx'; const bb = !!aa; // bb輸出為true const cc = !!(NaN || undefined || null || 0 || '' ); // cc為false;
感謝各位的閱讀!關(guān)于“js中bool值的如何轉(zhuǎn)換”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!