JavaScript-Funktion-Call
- Vorherige Seite JS-Funktion-Aufruf
- Nächste Seite JS-Funktion Apply
Methodenwiederverwendung
Verwenden call()
Methoden, die Sie schreiben können, um Methoden auf verschiedenen Objekten zu verwenden.
Funktionen sind Methoden von Objekten
In JavaScript sind Funktionen Methoden von Objekten.
Wenn eine Funktion nicht eine Methode eines JavaScript-Objekts ist, dann ist es eine Funktion des globalen Objekts (siehe Kapitel zuvor).
Unten ist ein Beispiel für die Erstellung eines Objekts mit drei Eigenschaften (firstName
,lastName
,fullName
)。
Beispiel
var person = { firstName:"Bill", lastName: "Gates", fullName: function () { return this.firstName + " " + this.lastName; } } person.fullName(); // Es wird "Bill Gates" zurückgegeben
Die fullName-Eigenschaft ist eineMethode. Das person-Objekt ist derEigentümer.
Die fullName-Eigenschaft gehört zu Methoden des person-Objekts.
JavaScript call() Methode
call()
Methoden sind vorgegebene JavaScript-Methoden.
Es kann verwendet werden, um Methoden des Eigentümers als Parameter aufzurufen.
Durch call()
Sie können Methoden eines anderen Objekts verwenden.
In diesem Beispiel wird die fullName-Methode von person aufgerufen und für person1 verwendet:
Beispiel
var person = { fullName: function() { return this.firstName + " " + this.lastName; } } var person1 = { firstName:"Bill", lastName: "Gates", } var person2 = { firstName:"Steve", lastName: "Jobs", } person.fullName.call(person1); // Es wird "Bill Gates" zurückgegeben
In diesem Beispiel wird die fullName-Methode von person aufgerufen und für person2 verwendet:
Beispiel
var person = { fullName: function() { return this.firstName + " " + this.lastName; } } var person1 = { firstName:"Bill", lastName: "Gates", } var person2 = { firstName:"Steve", lastName: "Jobs", } person.fullName.call(person2); // wird "Steve Jobs" zurückgeben
call()-Methode mit Parametern
Die call()-Methode kann Parameter akzeptieren:
Beispiel
var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; } } var person1 = { firstName:"Bill", lastName: "Gates" } person.fullName.call(person1, "Seattle", "USA");
- Vorherige Seite JS-Funktion-Aufruf
- Nächste Seite JS-Funktion Apply