iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
自我挑戰組

30天JavaScript自學挑戰系列 第 12

Day 12 Truthy Value 和 Falsy Value

  • 分享至 

  • xImage
  •  

在討論布林值之前,要先理解truthy value和falsy value的概念,falsy value是指一個不完全是false的值,但當我們嘗試將它轉變成布林值時,我們會得到false。

在JavaScript中,有5個falsy values,分別是0、空字串(empty string)、NaN、null及undefined。

當然false的本身也是false,除了上述5個例子和false之外的,都稱作truthy value,像是任一不為0的數字、任何不是空字串的字串等等,當我們試圖將它們轉變成布林值時,就會得到true。

console.log(Boolean(0));
// false
console.log(Boolean(-1));
// true
console.log(Boolean(""));
// false
console.log(Boolean("Hello, world!"));
// true
console.log(Boolean({}));
// true

實際上布林函數可能很少會被使用到,因為JavaScript會自己幫我們進行type coercion,但我們還是必須了解truthy value和falsy value的概念。

那JavaScript會在什麼樣的情況下進行type coercion呢?一種是使用邏輯運算子時,另一種則是在邏輯語境中,例如if / else陳述式裡,這個就先留到明天再繼續說明了。


上一篇
Day 11 Type Conversion與Type Coercion
下一篇
Day 13 邏輯運算子與邏輯語境(Logical Context)
系列文
30天JavaScript自學挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言