1. 通過 for...in... 遍歷屬性
function checkObjNull(obj) {
// 如果對象不為空,則會執行到這一步
for (var item in obj) {
return true
}
// 如果為空,返回 false
return false
}
let obj = {
name: 'aurora'
}
let obj1 = {}
let res = checkObjNull(obj); // true
let res1 = checkObjNull(obj1); // false
2. 通過 JSON 自帶的 stringify() 方法判斷
JSON.stringify()
方法用於將 JS 對象轉換成 JSON 字符串
function checkObjNull(obj) {
if (JSON.stringify(obj) === "{}"){
return false
}
return true
}
let obj = {}
let obj1 = {
name: 'aurora'
}
let res = checkObjNull(obj) // false
let res1 = checkObjNull(obj1) // true
3. es6 新增的方法 Object.keys()
Object.keys()
方法會返回一個由給定對象的自身可枚舉屬性組成的數組
如果對象為空,那么它會返回一個空數組
let obj = {}
Object.keys(a) // []
我們可以依靠 Object.keys()
這個方法通過判斷對象屬性的長度來判斷這個對象是不是數組
function checkObjNull(obj) {
return !!Object.keys(obj).length
// return Object.keys(obj).length > 0
}
let obj = {};
let obj1 = {
name: 'aurora'
};
let res = checkObjNull(obj); // false
let res1 = checkObjNull(obj1); // true