Сначала уточните термин: execution context, лексическая область и значение this — связанные, но разные понятия. Их часто смешивают в интервью.
Какие виды контекста бывают в JavaScript?
Сначала уточните термин: execution context, лексическая область и значение this — связанные, но разные понятия. Их часто смешивают в интервью.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сначала уточните термин: execution context, лексическая область и значение this — связанные, но разные понятия. Их часто смешивают в интервью.
Контекст выполнения создаётся для исполнения кода, например глобального кода или вызова функции, и участвует в стеке. Лексическое окружение определяет доступ к именам, а this зависит от формы вызова обычной функции либо наследуется стрелкой. Упоминание «контекста объекта» обычно означает this, а не отдельный вид области видимости.