js 判断还有某个属性的object是否存在
时间: 2023-05-04 22:02:40 浏览: 110
如果想要判断一个对象是否存在某个属性,可以使用in操作符或者hasOwnProperty方法。
1. in操作符:语法是属性名 in 对象名,如果对象中有该属性,返回true,否则返回false。
例如,假设有一个对象person,想要判断它是否有name属性,代码如下:
```
var person = {name: '张三', age: 18};
if ('name' in person) {
console.log('person存在name属性');
} else {
console.log('person不存在name属性');
}
```
2. hasOwnProperty方法:该方法用于判断一个对象是否具有某个属性,语法是对象名.hasOwnProperty(属性名),如果对象中有该属性,返回true,否则返回false。与in操作符的区别在于,hasOwnProperty只能判断对象自身具有的属性,不能判断原型链上的属性。
例如,继续以上面的person对象为例,假设想要判断它是否具有name属性,代码如下:
```
var person = {name: '张三', age: 18};
if (person.hasOwnProperty('name')) {
console.log('person具有name属性');
} else {
console.log('person不具有name属性');
}
```
综上所述,以上两种方法都可以用于判断一个对象是否具有某个属性,但是需要注意它们各自的使用场景。如果需要判断原型链上的属性,应该使用in操作符;如果只需要判断对象自身的属性,应该使用hasOwnProperty方法。
阅读全文