判断对象是否包含某个属性

判断对象是否包含某个属性

是否为空

(1) 使用JSON.stringify

把对象转为字符串,再判断字符串是否等于"{}"

const a={test:123}
JSON.stringify(a)==="{}" // false

(2) ES6新方法,通过Object.keys, Object.values, Object.entries返回数组,判断数组的长度是否大于0即可

const a={test:123}
console.log(Object.keys(a).length) // 1

是否有某个属性

(1) 通过上述的方法返回含有键值对的数组后,判断数组中是否有某个对应的值,使用indexOf,-1为不存在

const a={test:123}
Object.keys(a).indexOf("test") // 0
Object.keys(a).indexOf("show") // -1

(2) ES6 属性名 in 对象,返回一个布尔值

const a={test:123}
"test" in a // true
"show" in a // false

(3) hasOwnProperty方法,这个方法就是用来检测对象的某个属性是否存在

const a={test:123}
a.hasOwnProperty('test') // true
a.hasOwnProperty('show') // false
posted @ 2021-01-06 18:05  沐雨辰沨  阅读(1266)  评论(0)    收藏  举报