Встречается на собеседованиях • сегодня
Что происходит при обращении к методу объекта которого нет в текущем объекте
При обращении к несуществующему методу объекта JavaScript сначала ищет его в прототипной цепочке. Если метод не найден ни в самом объекте, ни в его прототипах, будет выброшена ошибка TypeError: obj.method is not a function.
Пример:
javascript
const obj = { name: 'Test' };
obj.sayHello(); // TypeError: obj.sayHello is not a functionЧтобы избежать ошибок, можно:
- Проверять наличие метода:
javascript
if (typeof obj.sayHello === 'function') {
obj.sayHello();
}- Использовать оператор опциональной цепочки:
javascript
obj.sayHello?.();- Задавать методы через прототип:
javascript
Object.prototype.sayHello = function() {
console.log('Hello!');
};
obj.sayHello(); // 'Hello!'
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы