Das Hauptkonzept hinter all diesen Methoden ist Funktion Wühlen .
Das Ausleihen von Funktionen ermöglicht es uns, die Methoden eines Objekts auf einem anderen Objekt zu verwenden, ohne eine Kopie dieser Methode zu erstellen und sie an zwei verschiedenen Stellen zu pflegen. Erreicht wird dies durch die Verwendung von . call() , . apply() oder . bind() , die alle dazu dienen, die Methode, die wir ausleihen, explizit festzulegen
- Rufen Sie an. ruft die Funktion sofort auf und erlaubt es Ihnen, die Argumente einzeln zu übergeben einzeln
- Bewerbung ruft die Funktion sofort auf und erlaubt es Ihnen, Argumente zu übergeben als Array .
- Binden Sie gibt eine neue Funktion zurück, die Sie jederzeit aufrufen können, indem Sie eine Funktion aufrufen.
Im Folgenden finden Sie ein Beispiel für alle diese Methoden
let name = {
firstname : "Arham",
lastname : "Chowdhury",
}
printFullName = function(hometown,company){
console.log(this.firstname + " " + this.lastname +", " + hometown + ", " + company)
}
ANRUFEN
das erste Argument, z.B. Name innerhalb der Aufrufmethode, ist immer ein Verweis auf (diese) Variable und letztere wird zur Funktionsvariablen
printFullName.call(name,"Mumbai","Taufa"); //Arham Chowdhury, Mumbai, Taufa
APPLY
a der einzige Unterschied ist, dass die Funktionsargumente in einer Array-Liste übergeben werden
printFullName.apply(name, ["Mumbai","Taufa"]); //Arham Chowdhury, Mumbai, Taufa
BIND
Die bind-Methode entspricht der call-Methode, mit dem Unterschied, dass bind eine Funktion zurückgibt, die später durch Aufruf verwendet werden kann (sie wird nicht sofort aufgerufen).
let printMyNAme = printFullName.bind(name,"Mumbai","Taufa");
printMyNAme(); //Arham Chowdhury, Mumbai, Taufa
printMyNAme() ist die Funktion, die die folgende Funktion aufruft
unten ist der Link für jsfiddle
https://codepen.io/Arham11/pen/vYNqExp