JavaScript 对象自身属性
在本教程中,您将了解 JavaScript 对象的自身属性 Own Properties。在 JavaScript ,对象是属性的集合,每个属性都是一个键值对。
下面的示例使用对象初始化器创建 person 对象,person 对象有两个属性:firstName和lastName。:
const person = {
    firstName: 'John',
    lastName: 'Doe'
};
JavaScript 使用原型继承。因此,对象的属性可以是自己的,也可以是继承的。直接在对象定义的属性是自己的,而对象从其原型接收的属性是继承的。
下面创建 employee 对象,它继承 person 对象:
const employee = Object.create(person, {
    job: {
        value: 'JS Developer',
        enumerable: true
    }
});
employee 对象具有自己的属性 job,并从原型对象 person 继承 firstName 和 lastName 属性。
如果属性是自己的,则 hasOwnProperty() 方法返回 true。例如:
console.log(employee.hasOwnProperty('job')); // => true
console.log(employee.hasOwnProperty('firstName')); // => false
console.log(employee.hasOwnProperty('lastName')); // => false
console.log(employee.hasOwnProperty('ssn')); // => false
结论
- 直接在对象定义的属性是自身属性。
- obj.hasOwnProperty()方法确定属性是否是自身属性。