Υποενότητα 6.2: Αντικείμενα JavaScript
The this keyword
Στην προηγούμενη σελίδα, είδαμε τη λέξη-κλειδί this tνα χρησιμοποιείται μέσα σε ένα αντικείμενο.
Αλλά τι είναι αυτό το this?
Γενικά, η λέξη-κλειδί this αναφέρεται στο πλαίσιο στο οποίο καλείται η συνάρτηση.
Στο προηγούμενο παράδειγμα μας:
var darkChoco = {
cacao:"80%",
milk:"0%",
grams:100,
getFullInfo : function () {
return this.cacao + " " + this.milk + " " + this.grams;
}
};
this αναφέρεται στις τιμές των cacao, milk and grams.
Η σημασία του this αλλάζει, ανάλογα με το πού το χρησιμοποιούμε
Τώρα ανοίξτε την κονσόλα και πληκτρολογήστε : this;
Τι βλέπετε;
Window {postMessage: ƒ, blur: ƒ, focus: ƒ, close: ƒ, frames: Window, …}
Όταν δεν υπάρχει καμία συνάρτηση σχετική με αυτό και απλά καλούμε, το περιβάλλον αυτής της κλήσης είναι το παγκόσμιο πλαίσιο - global context. Σε ένα πρόγραμμα περιήγησης στο Web, ΄όπου κανάνας κώδικας javaScript δεν έχει καθοριστεί, έχει το Παράθυρο - Window ως παγκόσμιο αντικείμενο - global object. Έτσι, σε αυτή την περίπτωση, this αναφέρεται στο αντικείμενο Window.
Μια άλλη πολύ σημαντική χρήση this είναι στις constructor functions. Θα μάθουμε περισσότερα γι' αυτές στο επόμενο Submodule.