Junior — Middle
Qual é a principal diferença entre as chamadas de funções através dos métodos bind e apply em JavaScript?
sobes.tech IA
Resposta da IA
A principal diferença entre bind e apply em JavaScript é:
bindcria uma nova função com o contexto (this) ligado e, opcionalmente, argumentos iniciais. Essa nova função pode ser chamada posteriormente.applychama imediatamente a função com o contexto especificado e os argumentos passados como um array.
Exemplo:
function greet(greeting, punctuation) {
console.log(greeting + ', ' + this.name + punctuation);
}
const person = { name: 'Иван' };
const boundGreet = greet.bind(person, 'Привет');
boundGreet('!'); // Vai exibir: Привет, Иван!
// Com apply, chamamos imediatamente
greet.apply(person, ['Здравствуйте', '.']); // Vai exibir: Здравствуйте, Иван.