Junior — Middle
Ի՞նչ է JavaScript-ում ֆունկցիաներ կանչելու հիմնական տարբերությունը bind և apply մեթոդների միջոցով:
sobes.tech AI
Պատասխան AI-ից
JavaScript- ում bind և apply միջև հիմնական տարբերությունը:
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, ['Здравствуйте', '.']); // Տպում է՝ Здравствуйте, Иван.