Middle
25
Контекстпен (this) жұмыс істеудің қандай әдістері бар? call әдісінің сигнатурасы қандай? call және apply қалай ерекшеленеді?
Сұралған компаниялар
AI-дан жауап
sobes.tech AI
В JavaScript контекст (this) определяется тем, как вызывается функция. Основные методы работы с контекстом:
- call — вызывает функцию с указанным контекстом и аргументами, передаваемыми по одному.
- apply — похож на call, но аргументы передаются в виде массива.
- bind — возвращает новую функцию с привязанным контекстом, которую можно вызвать позже.
Сигнатура метода call:
func.call(thisArg, arg1, arg2, ...)
Разница между call и apply в способе передачи аргументов:
- call принимает аргументы через запятую
- apply принимает массив аргументов
Пример:
function greet(greeting, punctuation) {
console.log(greeting + ', ' + this.name + punctuation);
}
const person = { name: 'Иван' };
greet.call(person, 'Привет', '!'); // Привет, Иван!
greet.apply(person, ['Здравствуйте', '.']); // Здравствуйте, Иван.