JavaScript-funktionen Call () -metode kalder en funktion med en given denne værdi og argumenter leveret individuelt.
Metodens syntaks call()
er:
func.call(thisArg, arg1,… argN)
Her func
er en funktion.
call () Parametre
Den call()
metode tager i:
thisArg
- Værdien, der erthis
angivet for opkaldet tilfunc
.arg1,… argN
(valgfrit) - Argumenter for funktionen.
Returneringsværdi fra opkald ()
- Returnerer resultatet af at kalde funktionen med den angivne
this
værdi og argumenter.
Ved at bruge call()
kan vi bruge de funktioner, der hører til et objekt, der skal tildeles, og kalde på et andet objekt.
Eksempel 1: Brug af opkald ()
function greet() ( const string = `My name is $(this.firstName) $(this.secondName). I am $(this.age) years old.`; console.log(string); ) const human = ( firstName: "Judah", lastName: "Parker", age: 26, ); greet.call(human); // My name is Judah undefined. I am 26 years old.
Produktion
Mit navn er Juda udefineret. Jeg er 26 år gammel.
Eksempel 2: Brug af call () til kædekonstruktører
function Animal(name, age) ( this.name = name; this.age = age; ) function Horse(name, age) ( Animal.call(this, name, age); this.sound = "Neigh"; ) function Snake(name, age) ( Animal.call(this, name, age); this.sound = "Hiss"; ) const snake1 = new Snake("Harry", 5); console.log(snake1.name, snake1.age, snake1.sound); const horse1 = new Horse("Arnold", 8); console.log(horse1.name, horse1.age, horse1.sound);
Produktion
Harry 5 Hiss Arnold 8 Nabo
Bemærk: Forskellen mellem call()
og apply()
er, at call()
accepterer en argumenteliste, mens den apply()
accepterer et enkelt array af argumenter.
Anbefalet læsning: JavaScript-funktion gælder ()