[JS] 如何判断一个对象是否为空
生活随笔
收集整理的這篇文章主要介紹了
[JS] 如何判断一个对象是否为空
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
js判斷空對(duì)象的幾種方法
一、將對(duì)象轉(zhuǎn)為字符串比較
let a = {}
console.log(JSON.stringify(a) === '{}') //true
二、for…in循環(huán)
function isEmpty(obj) {for (let key in obj) {return false}return true
}
console.log(isEmpty(a)) //true
三、Object.getOwnPropertyNames()
Object.getOwnPropertyNames()方法返回一個(gè)由指定對(duì)象的所有自身屬性的屬性名(包括不可枚舉屬性但不包括Symbol值作為名稱(chēng)的屬性)組成的數(shù)組。
用此方法判斷空對(duì)象只需要判斷返回的數(shù)組長(zhǎng)度是否為零,為零的話(huà)就是空對(duì)象。
console.log(Object.getOwnPropertyNames(a).length == 0) //true
四、Object.keys()
該方法屬于 ES5 標(biāo)準(zhǔn),IE9 以上和其它現(xiàn)代瀏覽器均支持。Object.keys() 方法會(huì)返回一個(gè)由一個(gè)給定對(duì)象的自身可枚舉屬性組成的數(shù)組,數(shù)組中屬性名的排列順序和使用 for…in 循環(huán)遍歷該對(duì)象時(shí)返回的順序一致。
用此方法判斷空對(duì)象只需要判斷返回的數(shù)組長(zhǎng)度是否為零,為零的話(huà)就是空對(duì)象。
let keys = Object.keys(a)
console.log(keys.length == 0) //true
完整代碼:
//js判斷空對(duì)象的幾種方法
//一、將對(duì)象轉(zhuǎn)為字符串比較
let a = {}
console.log(JSON.stringify(a) === '{}') //true//二、for…in循環(huán)
function isEmpty(obj) {for (let key in obj) {return false}return true
}
console.log(isEmpty(a)) //true//三、Object.getOwnPropertyNames()
//Object.getOwnPropertyNames()方法返回一個(gè)由指定對(duì)象的所有自身屬性的屬性名
//(包括不可枚舉屬性但不包括Symbol值作為名稱(chēng)的屬性)組成的數(shù)組。
//用此方法判斷空對(duì)象只需要判斷返回的數(shù)組長(zhǎng)度是否為零,為零的話(huà)就是空對(duì)象。
console.log(Object.getOwnPropertyNames(a).length == 0) //true//四、Object.keys()
//該方法屬于 ES5 標(biāo)準(zhǔn),IE9 以上和其它現(xiàn)代瀏覽器均支持。
//Object.keys() 方法會(huì)返回一個(gè)由一個(gè)給定對(duì)象的自身可枚舉屬性組成的數(shù)組,
//數(shù)組中屬性名的排列順序和使用 for…in 循環(huán)遍歷該對(duì)象時(shí)返回的順序一致。
//用此方法判斷空對(duì)象只需要判斷返回的數(shù)組長(zhǎng)度是否為零,為零的話(huà)就是空對(duì)象。
let keys = Object.keys(a)
console.log(keys.length == 0) //true
運(yùn)行結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的[JS] 如何判断一个对象是否为空的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [C] Bellman-Ford边松弛:
- 下一篇: [JS] for-each和map()的