Μέθοδος call
Η μέθοδος call επιτρέπει την κλήση μιας συνάρτησης
με δεδομένο περιεχόμενο. Ως πρώτη παράμετρο
της μεθόδου πρέπει να καθορίζεται το περιεχόμενο της συνάρτησης,
και ως υπόλοιπες παράμετροι - οι παράμετροι της συνάρτησης.
Σύνταξη
συνάρτηση.call(περιεχόμενο, παράμετρος1, παράμετρος2...);
Παράδειγμα
Ας υποθέσουμε ότι έχουμε ένα πεδίο εισόδου:
<input id="elem" value="text">
Ας υποθέσουμε επίσης ότι δίνεται μια συνάρτηση που δέχεται τρεις παραμέτρους:
function func(param1, param2, param3) {
console.log(this.value + param1 + param2 + param3);
}
Ας καλέσουμε τη συνάρτησή μας έτσι ώστε το this
μέσα στη συνάρτηση να είναι ίσο με το πεδίο εισόδου μας, και
ταυτόχρονα να της περάσουμε ως παραμέτρους τους αριθμούς 1,
2 και 3:
let elem = document.querySelector('#elem');
func.call(elem, 1, 2, 3);
Παράδειγμα
Ας υποθέσουμε ότι η συνάρτηση δεν δέχεται παραμέτρους:
function func() {
console.log(this.value);
}
Σε αυτήν την περίπτωση, κατά την κλήση αυτής της συνάρτησης μέσω
call αρκεί να περάσουμε μόνο την πρώτη παράμετρο
με το περιεχόμενο:
let elem = document.querySelector('#elem');
func.call(elem);