Встречается на собеседованиях • сегодня

Как проверить вхождение свойства в объект с прототипом

Для проверки вхождения свойства в объект, включая унаследованные из прототипа, используйте оператор in:

javascript
const obj = { a: 1 };
const child = Object.create(obj);
child.b = 2;

console.log('a' in child); // true (наследуется)
console.log('b' in child); // true (собственное)
console.log('toString' in child); // true (из Object.prototype)

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

javascript
console.log(child.hasOwnProperty('a')); // false
console.log(child.hasOwnProperty('b')); // true

Для безопасной проверки (если объект может переопределить hasOwnProperty):

javascript
console.log(Object.prototype.hasOwnProperty.call(child, 'b')); // true
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы