Метода позива функције ЈаваСцрипт () позива функцију са задатом овом вредношћу и аргументима који се дају појединачно.
Синтакса call()
методе је:
func.call(thisArg, arg1,… argN)
Овде func
је функција.
цалл () параметри
call()
Метод узима у:
thisArg
- вредностthis
предвиђена за позив наfunc
.arg1,… argN
(опционално) - Аргументи за функцију.
Врати вредност из позива ()
- Враћа резултат позивања функције са наведеном
this
вриједношћу и аргументима.
Коришћењем call()
можемо користити функције које припадају једном објекту за додељивање и позивање за други објекат.
Пример 1: Коришћење позива ()
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.
Оутпут
Зовем се Јудах ундефинед. Ја имам 26 година.
Пример 2: Коришћење позива () за конструисање ланца
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);
Оутпут
Харри 5 Хисс Арнолд 8 Неигх
Напомена: Разлика између call()
и apply()
је у томе што call()
прихвата листу аргумената, док apply()
прихвата један низ аргумената.
Препоручено читање: Примена ЈаваСцрипт функције ()