1.使用JSON.stringify()將物件轉成字串,判斷是否等於{}。
var obj = {};
console.log(JSON.stringify(obj)=="{}"); //true複製程式碼
2.使用for in 迴圈物件。
var obj = {};
var b=function(){
for(var key in obj){
return false;
}
return true;
}
console.log(b());//true複製程式碼
3.Object.getOwnPropertyNames()方法,此方法不相容IE8,原理是將物件的屬性值存到一個陣列內,並返回這個陣列,然後我們可以通過判斷陣列長度來判斷物件是否為空。
var obj = {};
var arr = Object.getOwnPropertyNames(obj);
console.log(arr.length) //0為空複製程式碼
4.ES6中的Object.keys(),跟Object.getOwnPropertyNames()方法的原理類似,也是將物件的屬性值存到陣列中,並返回這個陣列。
var obj = {};
var arr = Object.keys(obj);
console.log(arr.length) //0為空複製程式碼