前言:在實現業務邏輯的過程中,很多任務程師都會遇到需要判斷乙個物件,陣列是否為空的情景,很多時候我們在請求資料的時候都需要判斷請求的物件資料是否為空,如果直接使用,在資料請求為空時,控制台就會報錯。因此我們需要給乙個判斷,如果資料存在就直接呼叫,不存在就建立空的物件/陣列。下面狗尾草給大家整理了幾種判斷物件是否為空的方法,希望對大家有幫助。
1.我們在需要請求物件/陣列的下標或屬性來判斷是否為空
var odata = obj.item !=="undefined" ? obj.item : {}
2.將json物件轉化為json字串,再判斷該字串是否為"{}"
var data = {};
var b = (json.stringify(data) == "{}");
alert(b);//true
3.for in 迴圈判斷
var obj = {};
var b = function()
return true;
}alert(b());//true
4.jquery的isemptyobject方法
此方法是jquery將方法3(for in)進行封裝,使用時需要依賴jquery
var data = {};
var b = $.isemptyobject(data);
alert(b);//true
5.object.getownpropertynames()方法
此方法是使用object物件的getownpropertynames方法,獲取到物件中的屬性名,存到乙個陣列中,返回陣列物件,我們可以通過判斷陣列的length來判斷此物件是否為空
注意:此方法不相容ie8,其餘瀏覽器沒有測試
var data = {};
var arr = object.getownpropertynames(data);
alert(arr.length == 0);//true
6.使用es6的object.keys()方法
與方法5類似,是es6的新方法, 返回值也是物件中屬性名組成的陣列
var data = {};
var arr = object.keys(data);
alert(arr.length == 0);//true
如何判斷物件是否為函式?
js中萬物皆為物件,function也不例外,而物件都有自己的類屬性。類屬性是乙個字串,可以通過類屬性看出物件的型別資訊,例如 object class 我們可以利用類屬性來判斷物件是否為函式。function isfun obj var a 1 var b var c var d 1 var e ...
如何判斷CString物件是否為空
判斷乙個cstring物件是否為空字串的最正確的方法就是呼叫isempty 函式,看例子 cstring str1 vc原始碼網 cstring str2 www.viewtop8.com if str1.isempty esle 如果cstring字串的長度為零的話,isempty 函式的返回值為...
Js如何判斷物件是否為空
1.將json物件轉化為json字串,再判斷該字串是否為 var data var b json.stringify data alert b true 2.for in 迴圈判斷 var obj var b function return true alert b true 3.jquery的is...