Junior — Middle
Kāda ir galvenā atšķirība starp funkciju izsaukšanu caur bind un apply metodēm JavaScript?
sobes.tech AI
Atbilde no AI
Galvenā atšķirība starp bind un apply JavaScript ir:
bindizveido jaunu funkciju ar sasaistītu kontekstu (this) un, ja nepieciešams, sākuma argumentiem. Šo jauno funkciju var izsaukt vēlāk.applyuzreiz izsauc funkciju ar norādīto kontekstu un argumentiem, kas nodoti kā masīvs.
Piemērs:
function greet(greeting, punctuation) {
console.log(greeting + ', ' + this.name + punctuation);
}
const person = { name: 'Иван' };
const boundGreet = greet.bind(person, 'Привет');
boundGreet('!'); // Izvadīs: Привет, Иван!
// Ar `apply` izsaucam uzreiz
greet.apply(person, ['Здравствуйте', '.']); // Izvadīs: Здравствуйте, Иван.