javascript判斷對象是否是空對象

一、判斷一下對象是否是空對象
    let obj1 = {
        name:"GG",
        say:function () {
            console.log("hahaha");
        }
    };
    let obj2 = {};
二、判斷方法
方法一:將對象轉換爲字符串
    let str1 = JSON.stringify(obj1);//注意:屬性會被轉換,方法不會
    let str2 = JSON.stringify(obj2);
    console.log(str1, str2);//返回:{"name":"GG"} {}
    console.log(str1 === "{}");//返回:true
方法二:使用getOwnPropertyNames:獲取指定對象所有屬性
    let keys1 = Object.getOwnPropertyNames(obj1);//屬性和方法都可以拿到
    let keys2 = Object.getOwnPropertyNames(obj2);
    console.log(keys1, keys2);
     console.log(keys2.length === 0);//true

打印結果

方式三:使用keys,結果同getOwnPropertyNames
    let value1 = Object.keys(obj1);
    let value2 = Object.keys(obj2);
    console.log(value1, value2);//返回結果同getOwnPropertyNames方法
    console.log(value2.length === 0);//true
三、封裝寫法
    function isEmptyObj(obj){
       //返回true即爲空對象
       return Object.getOwnPropertyNames(obj).length === 0;
   }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章