JS/React 判斷對象是否為空對象


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;
},

 


免責聲明!

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



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