JS如何判斷一個對象是否為空、是否有某個屬性


一、js判斷一個對象是否為空

  方法一:

let obj1 = {} let obj2 = {a:1} function empty(obj){ for (let key in obj){ return false;    //非空
} return true;       //為空
} console.log(empty(obj1)) //true為空
console.log(empty(obj2)) //false非空

  方法二:

let obj1 = {}
if(JSON.stringify(obj1) == "{}"){ console.log("空對象") }else { console.log("非空對象") }

  方法三:Object.keys(obj) 返回一個給定對象自身可枚舉屬性組成的數組。

let obj1 = {}
if (Object.keys(obj1).length == 0){ console.log("空對象") }else { console.log("非空對象") }

二、js判斷對象中是否有某個屬性

  方法一: . 或 [ ]   當此屬性的值為false、undefined、NaN、null、0、"" 時,此方法不適用。

if (obj2.a){ console.log("對象有此屬性") }else { console.log("對象無此屬性") }

  方法二: in運算符   如果某屬性在指定對象或其原型鏈上則返回true,只需判斷自身屬性時,此方法不適用。

let obj2 = {a:1}
if
("a" in obj2){ console.log("對象或其原型鏈上有此屬性") }else { console.log("對象或其原型鏈上無此屬性") }

  方法三:obj.hasOwnProperty() 對象自身屬性中含有某屬性,返回true。

let obj2 = {a:1}
if
(obj2.hasOwnProperty("a")){ console.log("對象上有此屬性") }else { console.log("對象上無此屬性") }


免責聲明!

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



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