Metoda poziva funkcije JavaScript () poziva funkciju s danom ovom vrijednošću i argumentima koji se daju pojedinačno.
Sintaksa call()
metode je:
func.call(thisArg, arg1,… argN)
Ovdje func
je funkcija.
call () Parametri
call()
Postupak uzima u:
thisArg
- Vrijednostthis
predviđena za poziv nafunc
.arg1,… argN
(nije obavezno) - Argumenti za funkciju.
Povratna vrijednost iz poziva ()
- Vraća rezultat pozivanja funkcije s navedenom
this
vrijednošću i argumentima.
Korištenjem call()
možemo koristiti funkcije koje pripadaju jednom objektu koje treba dodijeliti i pozvati za drugi objekt.
Primjer 1: Korištenje poziva ()
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.
Izlaz
Zovem se Judah undefined. Imam 26 godina.
Primjer 2: Korištenje poziva () za konstruiranje lanca
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);
Izlaz
Harry 5 Hiss Arnold 8 Neigh
Napomena: Razlika između call()
i apply()
je u tome što call()
prihvaća popis argumenata, dok apply()
prihvaća jedan niz argumenata.
Preporučeno štivo: Primijeniti JavaScript funkciju ()