Какое значение принимает `this` при вызове функции без контекста в строгом режиме и вне строгого?
Уровень: Senior
Ответ
Если функция вызывается как обычная (`func()`), без привязки к объекту, то в нестрогом режиме `this` внутри неё будет указывать на глобальный объект (в браузере это window). В строгом режиме (`"use strict"`) значение `this` в таком случае будет undefined. Это сделано, чтобы предотвращать неявное использование глобального контекста. Таким образом, отличие: в non-strict функции без контекста: this = window; в strict функции: this = undefined (и попытка обращаться к свойствам this вызовет ошибку).