Javascript 初學筆記34 利用Boolean()檢視falsy value(NaN,undefined,0,",null)

如同其他的程式語言,JS中存在著各種不同型態的數值,像是常見的Object、String、Number以及Boolean等等,那什麼叫做falsy value? 其實在以往的程式碼中我就常常用到這個概念,只是沒注意到這東西還有專有名詞。看一下以下的例子

const number = 0
console.log(number? 'I represent true' :  'I represent false')
//  I represent false 

在上方的例子中,number的值為0,但放入判斷式中會被判為false,有這樣特性的值我們就稱為所謂的falsy value,而今天在freecodecamp做基礎複習時(順便拿完課證明:P)遇到了一個挺有趣的題目

請試著寫一個函式,剔除輸入陣列中的falsy value

解法

function bouncer(arr) {
  let arr1 = arr.filter(item=>{
    return Boolean(item)? item:''
  })
return arr1;
} 

利用Boolean語法來處理這個函式非常的簡便。上方的例子中,若item是truly value則回傳item本身,反之若是 falsy value 則不做任何處理,最後陣列中就會只剩下 truly value ! 挺有意思的東西!

發表留言