天天看點

js判斷對象是否為空對象的幾種方法

1.将json對象轉化為json字元串,再判斷該字元串是否為"{}"

var data = {};

var b = (JSON.stringify(data) == "{}");

alert(b);//true

2.for in 循環判斷

var obj = {};

var b = function() {

for(var key in obj) {

return false;

}

return true;

alert(b());//true

3.jquery的isEmptyObject方法

此方法是jquery将2方法(for in)進行封裝,使用時需要依賴jquery

var b = $.isEmptyObject(data);

4.Object.getOwnPropertyNames()方法

此方法是使用Object對象的getOwnPropertyNames方法,擷取到對象中的屬性名,存到一個數組中,傳回數組對象,我們可以通過判斷數組的length來判斷此對象是否為空

注意:此方法不相容ie8,其餘浏覽器沒有測試

var arr = Object.getOwnPropertyNames(data);

alert(arr.length == 0);//true

5.使用ES6的Object.keys()方法

與4方法類似,是ES6的新方法, 傳回值也是對象中屬性名組成的數組

var arr = Object.keys(data);