Контекст выполнения функции (this) в JavaScript определяет, как функция вызывается и какие значения доступны внутри нее. Контекст динамически изменяется в зависимости от способа вызова:
this ссылается на глобальный объект (window в браузере, global в Node.js).
javascript
this внутри функции ссылается на глобальный объект (если функция не метод объекта). В строгом режиме ("use strict";) this будет undefined.
javascript
this ссылается на объект, частью которого является метод.
javascript
new (конструктор): Создает новый объект, который становится значением this внутри функции-конструктора, и возвращает этот объект.
javascript
call, apply, bind):
call(thisArg, arg1, arg2, ...): Вызывает функцию с указанным this и аргументами, перечисленными по отдельности.apply(thisArg, [argsArray]): Вызывает функцию с указанным this и аргументами в виде массива.bind(thisArg, arg1, arg2, ...): Возвращает новую функцию, у которой this навсегда привязан к thisArg и привязанным аргументам.javascript
this. Они захватывают this из объемлющей лексической области видимости (той, в которой они были определены).
javascript