js中布林值為false的六種情況

2021-09-29 14:46:33 字數 886 閱讀 1204

下面6種值轉化為布林值時為false,其他轉化都為true

1、undefined(未定義,找不到值時出現)

2、null(代表空值)

3、false(布林值的false,字串"false"布林值為true)

4、0(數字0,字串"0"布林值為true)

5、nan(無法計算結果時出現,表示"非數值";但是typeof nan==="number")

6、""(雙引號)或''(單引號) (空字串,中間有空格時也是true

注意空陣列空物件,負值轉的布林值時都為true

不同資料型別轉化為布林值的結果

資料型別

轉為true的值

轉為false的值

boolean

true

false

string

任何非空字串

''(空字串)

number

任何非零數字值(包括無窮大)

0和nan

object

任何物件

null

undefined

n/aundefined

對於0, '', null, undefined, nan,{}, , infinity求布林值,分別是false false false false false true true true.

因此我們知道的一點是:物件的布林值是true,即使是物件{}。

"!!"將表示式進行強制轉化為bool值的運算,運算結果為true或者false。

例如 array=[1,2,3]      array.num=undefind   !array.num=true   !!array.num=false

objc 中的布林值

1.bool bool,在c語言中是沒有定義的,objective c中有bool是因為它使用的編譯器能識別這樣的資料型別,被解釋為int型。2.bool bool,在objc中是用來做真假判斷的,多用於物件。3.boolean boolean 是乙個舊的carbon 關鍵字,他的資料型別是unsi...

JAXB中布林值的問題

在專案中需要採用jaxb來生成對應的xml檔案,在遇到布林值的時候,有如下問題需要注意 xmlrootelement name bean public class bean public void setflag boolean flag 上面是我剛開始的時候宣告布林值採用了基本型別boolean,...

js非布林值的與 與或 運算

非布林值的與 與或 運算 1.先將其轉換成布林值再做運算,並且返回原值 2.與 運算 a.如果第乙個值為true,則返回第二個值 b.如果第乙個值為false,則直接返回第乙個值 3.或 運算 a.如果第乙個值為true,則直接返回第乙個值 b.如果第乙個值為false,則返回第二個值 true f...