Метод виклику функції JavaScript () викликає функцію із заданим цим значенням та аргументами, що надаються окремо.
Синтаксис call()
методу:
func.call(thisArg, arg1,… argN)
Тут func
є функція.
параметри виклику ()
call()
Метод приймає в:
thisArg
- Значення,this
надане для дзвінкаfunc
.arg1,… argN
(необов’язково) - Аргументи для функції.
Повернути значення з виклику ()
- Повертає результат виклику функції із зазначеним
this
значенням та аргументами.
Використовуючи call()
, ми можемо використовувати функції, що належать одному об'єкту, щоб призначити їх і викликати для іншого об'єкта.
Приклад 1: Використання call ()
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: Використання call () для конструкторів ланцюгів
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()
приймає один масив аргументів.
Рекомендована література: застосовується функція JavaScript ()