JavaScript Call vs Apply vs Bind

JavaScript Call vs Apply vs Bind
Während der Programmierung in JavaScript gibt es Situationen, in denen die Funktionen eines Objekts in eine benutzerdefinierte Funktion integriert werden müssen. Darüber hinaus wenden Sie einige zusätzliche Funktionen auf das erstellte Objekt oder seine Eigenschaft an, um einen Betrieb anzuwenden, ohne es zu ändern. In solchen Fällen liefert JavaScript die “Forderung()","anwenden()", Und "binden()Methoden zur Bewältigung solcher Situationen.

In diesem Artikel werden die Unterschiede zwischen den Methoden CALL (), Apply () und Bind () erörtert.

JavaScript Call () vs Apply () vs Bind () Methoden

Call () Methode

Der "Forderung()Die Methode ruft eine Funktion mit einem bestimmten Kontext auf. Diese Methode kann angewendet werden, um die Funktionalitäten eines Objekts und eine Funktion zu integrieren, indem auf die Funktion zugreift, die das übergeordnete Objekt als Parameter einer Funktion zusammen mit den übergebenen Parametern gleichzeitig mit dem übergeordneten Objekt befindet.

Syntax

Rufen Sie an (Ref, Args)

In der angegebenen Syntax:

  • Ref"Bezieht sich auf den Wert, der als" als "als" verwendet werden soll "DasWenn Sie eine Funktion aufrufen.
  • Args”Zeigt auf die Argumente für die Funktion.

Beispiel

Folgen wir dem folgenden Beispiel:

Führen Sie im obigen Code -Snippet die folgenden Schritte aus:

  • Erstellen Sie ein Objekt mit der angegebenen Eigenschaft.
  • Danach deklarieren Sie eine Funktion namens “sumnum ()Mit den angegebenen Parametern.
  • In seiner Definition verwenden “DasUm auf die Eigenschaft des erstellten Objekts zu verweisen und die platzierten Parameter hinzuzufügen.
  • Greifen Sie schließlich auf die Funktion und die “zuForderung()Methode, indem Sie sich auf das erstellte Objekt und den übergebenen Parameter beziehen. Dadurch werden die Parameterwerte zum Wert der Objekteigenschaft hinzugefügt.

Ausgang

Aus der obigen Ausgabe kann beobachtet werden, dass die Summe der Werte der Eigenschaft des Objekts und die Passparameter zurückgegeben werden.

Anwenden () Methode

Diese Methode ist identisch mit dem “Forderung()" Methode. Der Unterschied in dieser Methode besteht darin, dass die Funktionsparameter in Form eines Arrays aufgenommen werden.

Syntax

bewerben (Ref, Array)

In der obigen Syntax:

  • Ref"Bezieht sich auf den Wert, der als" als "als" verwendet werden soll "DasWenn Sie eine Funktion aufrufen.
  • Array”Zeigt die Argumente in Form eines Arrays an, mit dem die Funktion aufgerufen wird.

Beispiel

Schauen wir uns das folgende Beispiel an:

Führen Sie im Adobe -Code -Snippet die folgenden Schritte aus:

  • Wiederholen Sie die besprochenen Schritte im Beispiel des “Forderung()Methode zum Erstellen eines Objekts, zum Deklarieren einer Funktion mit Parametern und zum Hinweis auf das Objekt.
  • Greifen Sie schließlich auf die definierte Funktion zu, indem Sie das bezeichnete Objekt als erster Parameter und die Parameterwerte der Funktion in der Form eines Arrays enthalten.
  • Dies führt in ähnlicher Weise dazu, die Summe des Objekts zurückzugeben und Parameterwerte zu übergeben.

Ausgang

Aus der obigen Ausgabe ist es offensichtlich, dass die gewünschte Summe zurückgegeben wird.

Bind () Methode

Der "binden()Die Methode wird nicht sofort eine Funktion ausführen, sondern gibt eine Funktion zurück, die später ausgeführt werden kann.

Syntax

binden (ref, args)

In der obigen Syntax:

  • Ref"Entspricht dem Wert als" als "als"DasParameter zur Zielfunktion.
  • Args”Bezieht sich auf die Argumente für die Funktion.

Beispiel

Folgen wir dem angegebenen Beispiel, um klar zu verstehen:

Führen Sie im obigen JavaScript -Code die folgenden Schritte aus:

  • Erinnern Sie sich an die besprochenen Schritte zum Erstellen eines Objekts und Definieren einer Funktion mit den angegebenen Parametern.
  • Wenden Sie im nächsten Schritt die anbinden()Methode ”und wiederholen Sie denselben Vorgang, um das erstellte Objekt und die übergebenen Parameterwerte zu enthalten, um die Summe zurückzugeben.
  • Speichern Sie hier die durchgeführten Funktionen im vorherigen Schritt in einem “im Einklang"Funktion benannt"Aktualisierung ()Das kann auch später genutzt werden.

Ausgang

In der obigen Ausgabe ist es offensichtlich, dass beim Aufrufen der angegebenen ““im EinklangFunktion, die Summe wird als Ergebnis zurückgegeben.

Beispiel: Anwenden von CALL (), Apply () und Bind () mit demselben Objekt und derselben Funktion

Wenden Sie in diesem Beispiel die diskutierten Methoden mit Hilfe einer Funktion auf ein einzelnes Objekt an.

Folgen wir schrittweise dem folgenden Beispiel:

Führen Sie in den obigen Codezeilen die folgenden Schritte aus:

  • Wiederholen Sie die besprochenen Schritte zum Erstellen eines Objekts und deklarieren Sie eine Funktion mit den angegebenen Parametern.
  • Greifen Sie im weiteren Code mit jeder diskutierten Methode auf die definierte Funktion zu.
  • Es kann beobachtet werden, dass alle drei Methoden zusammen mit der Funktion unterschiedlich angewendet werden, jedoch den gleichen Ausgang ergeben, wie nachstehend offensichtlich.

Ausgang

Aus der obigen Ausgabe ist ersichtlich, dass alle Methoden den gleichen Ausgang ergeben.

Abschluss

Der "Forderung()" Und "anwenden()Methoden können implementiert werden, um die Funktionalitäten eines Objekts und eine Funktion zu integrieren, indem die Parameterwerte einfach und in Form eines Arrays übergeben werden. Der "binden()”Methode kann auch ähnlich angewendet werden. Die zusätzliche Funktionalität in dieser Methode besteht darin, dass sie in einer Funktion gespeichert ist, die später verwendet werden muss. In diesem Tutorial wurden die Unterschiede zwischen den Methoden CALL (), Apply () und Bind () erläutert.