bind / call / apply
JavaScript 🟡 MidType : Method
Definition
Trois methodes pour controler la valeur de this. call et apply executent la fonction immediatement (apply prend un tableau d'args), bind retourne une nouvelle fonction avec this fige.
Analogie
call : tu appelles quelqu'un en lui donnant un role. apply : pareil mais tu lui donnes une liste de consignes. bind : tu lui attribues un role permanent.
Exemple de code
function greet(msg) { console.log(class="str">`${msg}, ${this.name}`); }
const user = { name: class="str">39;Alice39; };
greet.call(user, class="str">39;Salut39;); class="cmt">// Salut, Alice
greet.apply(user, [class="str">39;Hello39;]); class="cmt">// Hello, Alice
const bound = greet.bind(user);
bound(class="str">39;Hey39;); class="cmt">// Hey, AliceCas d'usage
Reutiliser une methode d'un objet dans un autre contexte, ou figer this pour un event handler.