Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: hasownproperty, объекты, прототипы

Как проверить, существует ли определенное свойство в объекте или его прототипе?

Этот вопрос помогает выявить знание о том, как проверить наличие свойства в объекте или его цепочке прототипов, а также различия между проверками внутри самого объекта и по всей цепочке прототипов.

Короткий ответ

Чтобы проверить, есть ли у объекта определенное свойство, можно использовать оператор in, который проверяет как сам объект, так и его прототипы. Если нужно проверить только наличие свойства непосредственно в объекте (без учета прототипов), используется метод hasOwnProperty().

Длинный ответ

В JavaScript есть несколько способов проверить наличие свойства в объекте. Оператор in проверяет как свойства объекта, так и свойства, которые могут быть унаследованы от его прототипов.

Пример:

const animal = { canMove: true }; 
const dog = Object.create(animal); 

dog.barks = true; 

console.log('barks' in dog); // true 
console.log('canMove' in dog); // true (унаследовано от animal)

Если же нужно проверить, принадлежит ли свойство именно самому объекту, без учета его прототипов, можно использовать метод hasOwnProperty():

console.log(dog.hasOwnProperty('barks')); // true 
console.log(dog.hasOwnProperty('canMove')); // false

Этот метод проверяет только свойства, непосредственно принадлежащие объекту. Он полезен, если вы хотите отделить свойства объекта от свойств, унаследованных через прототипы.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    3

  • Сложность:

    5

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#hasownproperty

#объекты

#прототипы

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию