Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Метод hasOwnProperty() возвращает логическое значение, указывающее, содержит ли объект указанное свойство.
Имя проверяемого свойства.
Каждый объект, произошедший от Object, наследует метод hasOwnProperty. Этот метод может использоваться для определения того, содержит ли объект указанное свойство в качестве собственного свойства объекта; в отличие от оператора in, этот метод не проверяет существование свойств в цепочке прототипов объекта.
В следующем примере определяется, содержит ли объект o свойство с именем prop:
Следующий пример показывает разницу между собственными свойствами и свойствами, унаследованными через цепочку прототипов:
Следующий пример показывает, как итерироваться по свойствам объекта с пропуском унаследованных свойств. Обратите внимание, что цикл for...in уже проходит только по перечисляемым элементам, так что не надо на основании отсутствия не перечисляемых свойств, показываемых в цикле, считать, что метод hasOwnProperty сам ограничивает свойства только перечисляемыми элементами (как это делает метод Object.getOwnPropertyNames()).
JavaScript не защищает имя свойства hasOwnProperty; таким образом, вполне может существовать объект с таким свойством, поэтому для получения правильного результата нужно использовать внешний метод hasOwnProperty:
Обратите внимание, что в последнем случае новые объекты не создаются.
| ECMAScript® 2027 Language Specification # sec-object.prototype.hasownproperty |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 24 мар. 2025 г. by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.