Περιορισμοί στα κλειδιά αντικειμένων στο JavaScript
Μπορούμε να γράψουμε χωρίς εισαγωγικά δεν είναι όλα τα κλειδιά των αντικειμένων, αλλά μόνο εκείνα που ικανοποιούν τους ακόλουθους περιορισμούς: δεν μπορούν να ξεκινούν με ψηφίο και δεν μπορούν να περιέχουν ενσωματωμένα παύλα, κενό και παρόμοια πράγματα.
Εάν μια συμβολοσειρά παραβιάζει τον περιορισμό, τότε πρέπει να τυλιχτεί σε εισαγωγικά. Στο επόμενο παράδειγμα, μέρος των κλειδιών δεν ικανοποιεί τις προϋποθέσεις και γι' αυτό τοποθετούνται σε εισαγωγικά:
let obj = {'1key': 'a', 'key-2': 'b', key3: 'c'};
Σε τέτοια κλειδιά μπορούμε να προσπελάσουμε μόνο μέσω αγκύλων:
console.log(obj['1key']);
console.log(obj['key-2']);
Επίσης, η προσπέλαση σε τέτοια ονόματα μέσω της ιδιότητας του αντικειμένου θα οδηγήσει σε σφάλμα:
console.log(obj.1key);
console.log(obj.key-2);
Ωστόσο, το τρίτο κλειδί - είναι επιτρεπτό, και σε αυτό μπορούμε να προσπελάσουμε με δύο τρόπους:
console.log(obj['key3']);
console.log(obj.key3);
Δίνεται ένα αντικείμενο:
let obj = {
'1a': 1,
'b2': 2,
'c-c': 3,
'd 4': 4,
'e5': 5
};
Για ποια κλειδιά αυτού του αντικειμένου τα εισαγωγικά είναι υποχρεωτικά, και για ποια όχι;
Διορθώστε τα λάθη που έγιναν στον ακόλουθο κώδικα:
let obj = {
'1a': 1,
'b2': 2,
'c-c': 3,
'd 4': 4,
'e5': 5
};
console.log(obj.1a);
console.log(obj.b2);
console.log(obj.c-c);
console.log(obj.d 4);
console.log(obj.e5);