1、使用ES6提供的 Object.keys(obj) 方法
Object.keys 返回一個陣列,包括物件自身的(不含繼承的)所有可列舉屬性(不含 Symbol 屬性)的鍵名。
Object.keys(obj).length === 0 && obj.constructor === Object //true表示為空物件,false為非空物件
複製程式碼
缺點: 部分瀏覽器不支援,需要通過 babel 類外掛轉為 ES5
2、遍歷物件,通過物件的 hasOwnProperty() 方法判斷
isEmpty(obj) {
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) {
return false;
}
}
return true && JSON.stringify(obj) === JSON.stringify({});
}
//isEmpty(obj) 等於true表示為空物件,等於false表示非空物件
複製程式碼
3、使用 jquery 的 isEmptyObject(obj) 方法
jquery.isEmptyObject(obj) //true表示為空物件,false為空物件
複製程式碼
4、後續方法更新中...