1. in
如果指定的属性在指定的对象或其原型链中,则 in
运算符返回 true
。
const car = { make: 'Honda', model: 'Accord', year: 1998 }; console.log('make' in car); // true delete car.make; if ('make' in car === false) { car.make = 'Suzuki'; } console.log(car.make); // "Suzuki"
2. Object.prototype.hasOwnProperty()
hasOwnProperty()
方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是,是否有指定的键)。
const object1 = {}; object1.property1 = 42; console.log(object1.hasOwnProperty('property1')); // true console.log(object1.hasOwnProperty('toString')); // false console.log(object1.hasOwnProperty('hasOwnProperty')); // false