iT邦幫忙

0

JS Truthy 與 Falsy DAY55

  • 分享至 

  • twitterImage
  •  

MDN: https://developer.mozilla.org/zh-CN/docs/Glossary/Truthy

if(5){
    console.log('success');
}
// () 裡面判斷為 真值(truthy) 則執行
// () 裡面判斷為 假值(falsy) 則執行

這裡提供一個非常有用的資訊
https://dorey.github.io/JavaScript-Equality-Table/

// 空字串 falsy
if(''){
    console.log('truthy');
}else{
    console.log('falsy');
}


// 多一個空白 truthy
if(' '){
    console.log('truthy');
}else{
    console.log('falsy');
}

// undefined falsy
if(undefined){
    console.log('truthy');
}else{
    console.log('falsy');
}

// 空陣列 truthy
if([]){
    console.log('truthy');
}else{
    console.log('falsy');
}

// 空物件 truthy
if({}){
    console.log('truthy');
}else{
    console.log('falsy');
}

// 0 falsy

if(0){
    console.log('truthy');
}else{
    console.log('falsy');
}

// new Number(0) truthy
console.log(new Number(0)); // 其實是物件型式
if(new Number(0)){
    console.log('truthy');
}else{
    console.log('falsy');
}

// new Boolean(0) truthy
console.log(new Boolean(false)); // 其實是物件型式
if(new Boolean(false)){
    console.log('truthy');
}else{
    console.log('falsy');
}

// 只要是物件型式 不管內容是什麼 皆為真值
// 所以我們在建立原始型的時候 應該避免利用包裹物件來建立

可對照上述連結的表格
那今天的介紹就到這裡
若有任何問題 或 內容有誤
可以跟我說唷/images/emoticon/emoticon07.gif


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言