JavaScript Function Call
- Forrige side JS-funktion kald
- Næste side JS-funktion Apply
metode gentagelse
Brug call()
metoder, som du kan skrive til at kunne bruges på forskellige objekter.
Funktioner er objektmetoder
I JavaScript er funktioner metoder for objekter.
Hvis en funktion ikke er en metode for et JavaScript-objekt, så er det en funktion for det globale objekt (se kapitlet før).
Følgende eksempel opretter et objekt med tre egenskaber (firstName
、lastName
、fullName
)。
Eksempel
var person = { firstName:"Bill", lastName: "Gates", fullName: function () { return this.firstName + " " + this.lastName; } } person.fullName(); // vil returnere "Bill Gates"
fullName egenskaben er enmetode。person objektet er metodenEjeren。
fullName egenskaben tilhører person objektets metode。
JavaScript call() metode
call()
Metoder er prædefinerede JavaScript-metoder.
Det kan bruges til at kalde metoder, der er parametre til ejers objekt.
Gennem call()
,du kan bruge metoder, der tilhører en anden objekt.
Dette eksempel kalder personens fullName-metode og bruger den til person1:
Eksempel
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); // vil returnere "Bill Gates"
Dette eksempel kalder personens fullName-metode og bruger den til person2:
Eksempel
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); // vil returnere "Steve Jobs"
call()-metode med parameter
call()-metoden kan acceptere parameter:
Eksempel
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");
- Forrige side JS-funktion kald
- Næste side JS-funktion Apply