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


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 data = {};

var b = $.isEmptyObject(data);

alert(b);//true



4.Object.getOwnPropertyNames()方法

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

注意:此方法不兼容ie8,其余瀏覽器沒有測試

var data = {};

var arr = Object.getOwnPropertyNames(data);

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



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

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

var data = {};

var arr = Object.keys(data);

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

 

JS 的 _.isEmpty()函數使用

 

判斷函數入參值是否為空,只能用於字符型(string)、對象(object)、數組(array)不適用於數值型和布爾型,舉例說明:

1、空值: null、‘’、undefined 返回都是true 。Ex:

_.isEmpty(null) , _.isEmpty('') , _.isEmpty(undefined) 判斷結果都是true

2、boolean類型 true、false 返回都是true 。Ex:

_.isEmpty(true) , _.isEmpty(false) 判斷結果都是true

_.isEmpty('true') , _.isEmpty('false') 將參數視為字符串判斷結果都是false

3、number類型 0、1、2 返回都是true。Ex:

_.isEmpty(0) , _.isEmpty(1) , _.isEmpty(2) 判斷結果都是true

_.isEmpty('0') , _.isEmpty('1') , _.isEmpty('2') 判斷結果都是fals


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM