我們想要判斷對象是否為空,像基本類型那樣判斷是不可以的, ==={} ?這樣是錯誤的,
因為只是比較引用地址是否相同,所以可以采取下面的方法來進行判斷
1.根據for...in
遍歷對象,如果存在則返回true,否則返回false
for ( let i in obj) {
return true;
}
return false
2.利用JSON自帶的JSON.stringify()
方法來判斷
大概思路就是轉化為字符串’{}'來進行判斷
if (JSON.stringify(obj) === '{}') {
return true;
}
return false;
3.利用ES6中Object.keys()
來進行判斷 (推薦)Object.keys()
方法會返回一個由一個給定對象的自身可枚舉屬性組成的數組。
如果我們的對象為空,他會返回一個空數組。
Object.keys(obj).length === 0 ? '空' : '不為空'