Heim >Web-Frontend >js-Tutorial >Der Unterschied zwischen Aufruf, Anwenden und Binden in js
In JavaScript dienen Aufruf, Anwendung und Bindung dazu, den Kontext zu ändern, wenn eine Funktion ausgeführt wird. Mit anderen Worten: Sie dienen dazu, den Zeiger dieser Funktion innerhalb des Funktionskörpers zu ändern.
Der Unterschied zwischen Aufruf, Anwenden und Binden in js
Der Unterschied zwischen Aufruf, Anwenden und Binden kann durch gefunden werden Nachfolgend schauen wir uns Beispiele an.
var obj = { x: 81, }; var foo = { getX: function() { return this.x; } } console.log(foo.getX.bind(obj)()); //81 console.log(foo.getX.call(obj)); //81 console.log(foo.getX.apply(obj)); //81
Die drei Ausgaben sind alle 81, aber achten Sie auf die Ausgabe, die die bind()-Methode verwendet. Dahinter stehen ein Paar Klammern.
Mit anderen Worten, der Unterschied besteht darin, dass Sie die bind()-Methode verwenden, wenn Sie die Kontextumgebung ändern und diese nicht sofort, sondern per Callback ausführen möchten. Apply/call führt die Funktion sofort aus.
Um es zusammenzufassen:
Anwenden, Aufrufen und Binden werden alle verwendet, um die Ausrichtung dieses Objekts der Funktion zu ändern.
Anwenden, call Der erste Parameter von bind ist das Objekt, auf das dies verweist, also der Kontext, den Sie angeben möchten.
Anwenden, Aufrufen und Binden können alle nachfolgende Parameter verwenden, um Parameter zu übergeben 🎜>Bind gibt die entsprechende Funktion zurück, um sie später einfach aufrufen zu können.
Anwenden und Aufrufen sofort aufrufen.
Dieser Artikel stammt aus der Spalte
js-TutorialDas obige ist der detaillierte Inhalt vonDer Unterschied zwischen Aufruf, Anwenden und Binden in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!