判斷數組不爲空

假設後臺返回的接口數據res裏包含了一個字段list,list不是空數組的時候咱們纔會進行循環,不然就會報錯,可是怎麼判斷他不是空數組呢?
let list=res.list 
if(list){ 
    if(list.length>0){
            //循環
    }
}
上面的代碼中我是在第二層判斷裏進行的數組循環,爲何要畫蛇添足加一層list.length>0的判斷呢?
javaScript裏null、數字0、空字符串這些在if判斷裏都會被轉化爲false,可是若是後臺直接返回一個空數組[ ],在判斷裏是會被轉化成true的,所以還要再加一層判斷list.length>0,同時寫判斷的時候要注意,這兩個判斷是嵌套關係,不能寫成list&&list.length>0,若是list的值爲null,&&後面的list.length>0就會報錯,由於編譯時找不到list的length屬性。
ps:寫成三目運算符代碼會更簡潔java

相關文章
相關標籤/搜索