JS一般判斷對象是否為空,我們可以采用: if(!x)的方式直接判斷,但是如果是一個空對象,比如空的JSON對象,是這樣的:{},簡單的判斷是不成功的,因為它已經占用着內存了,如果是JQuery的話,直接使用isEmptyObject()來判斷,如果是JS,可以采取下面的方法1:
/* * 檢測對象是否是空對象(不包含任何可讀屬性)。 //如你上面的那個對象就是不含任何可讀屬性 * 方法只既檢測對象本身的屬性,不檢測從原型繼承的屬性。 */ function isOwnEmpty(obj) { for(var name in obj) { if(obj.hasOwnProperty(name)) { return false; } } return true; }; /* * 檢測對象是否是空對象(不包含任何可讀屬性)。 * 方法既檢測對象本身的屬性,也檢測從原型繼承的屬性(因此沒有使hasOwnProperty)。 */ function isEmpty(obj) { for (var name in obj) { return false; } return true; };
也可以采用方法2:
// 先轉化為對象,再判斷內容是否為{} JSON.stringify(obj) == "{}"
React中可以這樣采用:
isEmptyObject:function(obj){ for(var n in obj){return false} return true; },