Junior — Middle
Mi a fő különbség a függvényhívások között a bind és apply módszerek használatakor JavaScript-ben?
sobes.tech MI
Válasz az MI-től
Основное отличие между bind и apply в JavaScript заключается в том, что:
bindсоздаёт новую функцию с привязанным контекстом (this) и, опционально, начальными аргументами. Эта новая функция может быть вызвана позже.applyсразу вызывает функцию с указанным контекстом и аргументами, переданными в виде массива.
Пример:
function greet(greeting, punctuation) {
console.log(greeting + ', ' + this.name + punctuation);
}
const person = { name: 'Иван' };
const boundGreet = greet.bind(person, 'Привет');
boundGreet('!'); // Выведет: Привет, Иван!
// С apply вызываем сразу
greet.apply(person, ['Здравствуйте', '.']); // Выведет: Здравствуйте, Иван.