Η μέθοδος Call Function JavaScript () καλεί μια συνάρτηση με δεδομένη αυτήν την τιμή και τα ορίσματα που παρέχονται ξεχωριστά.
Η σύνταξη της 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);
Παραγωγή
Harry 5 Hiss Arnold 8 Neigh
Σημείωση: Η διαφορά μεταξύ call()
και apply()
είναι ότι call()
αποδέχεται μια λίστα ορισμάτων, ενώ apply()
δέχεται έναν μόνο πίνακα ορισμάτων.
Προτεινόμενη ανάγνωση: Ισχύει η λειτουργία JavaScript ()