В этом руководстве вы узнаете о собственных свойствах объекта в JavaScript.
В JavaScript объект представляет собой набор свойств, где каждое свойство представляет собой пару ключ-значение.
В этом примере создается новый объект с именем person
с использованием инициализатора объекта:
const person = { firstName: 'John', lastName: 'Doe' };
Объект person
имеет два свойства: firstName
и lastName
.
JavaScript использует прототипное наследование. Следовательно, свойство объекта может быть как собственным, так и унаследованным.
Свойство, определенное непосредственно в объекте, является собственным, в то время как свойство, которое объект получает от своего прототипа, наследуется.
В следующем коде создается объект с именем employee
, который наследуется от объекта person
:
const employee = Object.create(person, { job: { value: 'JS Developer', enumerable: true } });
Объект employee
имеет собственное свойство job
и наследует свойства firstName
и lastName
от своего прототипа person
.
Метод 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()
определяет, является ли свойство собственным.