Const JavaScript
- Προηγούμενη σελίδα JS Let
- Επόμενη σελίδα JS οπέρατορες
ECMAScript 2015
Το ECMAScript 2015 εισήγαγε δύο σημαντικά νέα κλειδιά JavaScript:let
και const
.
Με τη βοήθεια const
ορίζονται let
Οι μεταβλητές που ορίζονται
Παράδειγμα
const PI = 3.141592653589793; PI = 3.14; // Θα προκαλέσει σφάλμα PI = PI + 10; // Θα προκαλέσει σφάλμα
τοπικό περιβάλλον
στοτοπικό περιβάλλονμέσα const
Η αναφερόμενη μεταβλητή let
Οι μεταβλητές είναι παρόμοιες.
Σε αυτό το παράδειγμα, το x αναφέρεται στο τοπικό περιβάλλον, διαφορετικά από το x που αναφέρεται έξω από το περιβάλλον:
Παράδειγμα
var x = 10; // Εδώ, το x είναι 10 { const x = 6; // Εδώ, το x είναι 6 } // Εδώ, το x είναι 10
Στο προηγούμενο κεφάλαιο Let JavaScript Μάθαμε περισσότερα για το τοπικό περιβάλλον.
κατά την αναφορά τους
JavaScript const
Οι μεταβλητές πρέπει να αξιολογηθούν κατά την αναφορά τους:
Λάθος
const PI; PI = 3.14159265359;
Σωστό
const PI = 3.14159265359;
Δεν είναι πραγματικά στατικά
Κλειδί const
Διατηρεί μια ορισμένη παραπλάνηση.
Δεν ορίζει την τιμή του const. Ορίζει μια στατική αναφορά στη τιμή.
Επομένως, δεν μπορούμε να αλλάξουμε την αρχική τιμή του const, αλλά μπορούμε να αλλάξουμε τις ιδιότητες του αντικειμένου του const.
Αρχική τιμή
Αν παραδώσουμε μια αρχική τιμή στον const, δεν μπορούμε να αλλάξουμε την αρχική τιμή:
Παράδειγμα
const PI = 3.141592653589793; PI = 3.14; // Θα προκαλέσει σφάλμα PI = PI + 10; // Θα προκαλέσει σφάλμα
Το αντικείμενο του const μπορεί να αλλάξει
Μπορείτε να αλλάξετε τις ιδιότητες του αντικειμένου του const:
Παράδειγμα
// Μπορείτε να δημιουργήσετε αντικείμενα const: const car = {type:"porsche", model:"911", color:"Black"}; // Μπορείτε να αλλάξετε τις ιδιότητες: car.color = "White"; // Μπορείτε να προσθέσετε ιδιότητες: car.owner = "Bill";
Αλλά δεν μπορείτε να επαναθέσετε τιμή σε αντικείμενο const:
Παράδειγμα
const car = {type:"porsche", model:"911", color:"Black"}; car = {type:"Volvo", model:"XC60", color:"White"}; // Λάθος
Το σύνολο παραμέτρων const μπορεί να αλλάξει
Μπορείτε να αλλάξετε στοιχεία σε σύνολο παραμέτρων const:
Παράδειγμα
// Μπορείτε να δημιουργήσετε σύνολο παραμέτρων const: const cars = ["Audi", "BMW", "porsche"]; // Μπορείτε να αλλάξετε στοιχεία: cars[0] = "Honda"; // Μπορείτε να προσθέσετε στοιχεία: cars.push("Volvo");
Αλλά δεν μπορείτε να επαναθέσετε τιμή σε σύνολο παραμέτρων const:
Παράδειγμα
const cars = ["Audi", "BMW", "porsche"]; cars = ["Honda", "Toyota", "Volvo"]; // Λάθος
Υποστήριξη προγραμματιστών
Ο Internet Explorer 10 και οι προηγούμενες εκδόσεις δεν υποστηρίζουν const
Λέξη-κλειδί.
Η παρακάτω τάβληση ορίζει τις εκδόσεις των προγραμματιστών που υποστηρίζουν πλήρως τη λέξη-κλειδί const:
Chrome 49 | IE / Edge 11 | Firefox 36 | Safari 10 | Opera 36 |
Μάρτιος 2016 | Οκτώβριος 2013 | Φεβρουάριος 2015 | Σεπτέμβριος 2016 | Μάρτιος 2016 |
Επανασυμβολή
Συμματολογία JavaScript επιτρέπεται σε οποιαδήποτε θέση του προγράμματος var
Μεταβλητή:
Παράδειγμα
var x = 2; // Επιτρέπεται var x = 3; // Επιτρέπεται x = 4; // Επιτρέπεται
Στην ίδια περιοχή ή μπλοκ, δεν επιτρέπεται η επανασυμβολή ή η επαναθέσφηση τιμής μιας υπάρχουσας μεταβλητής var
ή let
Επανασυμβολή ή επαναθέσφηση τιμής μιας μεταβλητής const
:
Παράδειγμα
var x = 2; // Επιτρέπεται const x = 2; // Δεν επιτρέπεται { let x = 2; // Επιτρέπεται const x = 2; // Δεν επιτρέπεται }
Στην ίδια περιοχή ή μπλοκ, η επανασυμβολή ή η αναθέσφηση τιμής μιας υπάρχουσας μεταβλητής const δεν επιτρέπεται:
Παράδειγμα
const x = 2; // Επιτρέπεται const x = 3; // Δεν επιτρέπεται x = 3; // Δεν επιτρέπεται var x = 3; // Δεν επιτρέπεται let x = 3; // Δεν επιτρέπεται { const x = 2; // Επιτρέπεται const x = 3; // Δεν επιτρέπεται x = 3; // Δεν επιτρέπεται var x = 3; // Δεν επιτρέπεται let x = 3; // Δεν επιτρέπεται }
η επανάληψη της δήλωσης σε άλλη περιοχή ή μπλοκ const
Είναι επιτρεπόμενο:
Παράδειγμα
const x = 2; // Επιτρέπεται { const x = 3; // Επιτρέπεται } { const x = 4; // Επιτρέπεται }
Ανύψωση
Με τη βοήθεια var
Οι ορισμένες μεταβλητές θαΑνύψωσηστην κορυφή. Αν δεν γνωρίζετε τι είναι η ανύψωση (Hoisting), μάθετε αυτό το κεφάλαιο.
Μπορείτε να χρησιμοποιήσετε τη var μεταβλητή πριν από τη δήλωσή της:
Παράδειγμα
carName = "Volvo"; // Μπορείτε να χρησιμοποιήσετε το carName εδώ var carName;
Με τη βοήθεια const
Οι μεταβλητές που ορίστηκαν δεν θα ανεβαίνουν στην κορυφή.
const
Οι μεταβλητές δεν μπορούν να χρησιμοποιηθούν πριν από τη δήλωσή τους:
Παράδειγμα
carName = "Volvo"; // Δεν μπορείτε να χρησιμοποιήσετε το carName εδώ const carName = "Volvo";
- Προηγούμενη σελίδα JS Let
- Επόμενη σελίδα JS οπέρατορες