Встречается на собеседованиях • сегодня
В какой момент происходит присваивание контекста в function declaration и function expresion
Function declaration получает контекст (this) в момент вызова, в зависимости от способа вызова:
- Как метод объекта:
obj.func()-this= объект - Просто вызов:
func()-this=window/undefined(strict mode) - С
new:new Func()-this= новый экземпляр
Function expression ведет себя аналогично, так как это тоже функция. Разница только в объявлении:
javascript
// Function declaration
function foo() {
console.log(this);
}
// Function expression
const bar = function() {
console.log(this);
};
foo(); // window/undefined
bar(); // window/undefinedArrow functions - исключение, они берут контекст из окружающей области.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы