Πρότυπα Οντοτήτων JavaScript

Οι ιδιότητες είναι η πιο σημαντική πτυχή οποιουδήποτε αντικειμένου JavaScript.

Ιδιότητες JavaScript

Οι ιδιότητες αναφέρονται στις τιμές που σχετίζονται με το αντικείμενο JavaScript.

Τα αντικείμενα JavaScript είναι συλλογές αντικειμένων μη τάξης.

Οι ιδιότητες μπορούν συνήθως να τροποποιηθούν, προσθέτονται και διαγράφονται, αλλά κάποιες ιδιότητες είναι μόνο αναγνωριστικές.

Πρόσβαση σε ιδιότητες JavaScript

Η σύνταξη πρόσβασης σε ιδιότητες αντικειμένου είναι:

όνομα αντικειμένου.ιδιότητα           // person.age

ή:

όνομα αντικειμένου["ιδιότητα]       // person["age"]

ή:

όνομα αντικειμένου[έκφραση]       // x = "age"; person[x]

Η έκφραση πρέπει να υπολογιστεί ως όνομα ιδιότητας.

Παράδειγμα 1

person.fname + " is " + person.age + " years old.";

Προσπαθήστε το προσωπικά

Παράδειγμα 2

person["fname"] + " is " + person["age"] + " years old.";

Προσπαθήστε το προσωπικά

Κύκλος JavaScript for...in

JavaScript for...in τεκμηρίωση του κύκλου ιδιοτήτων του αντικειμένου.

σύνταξη

for (πρόθεμα στο αντικείμενο) {
    Ο κώδικας που θα εκτελεστεί
}

for...in Ο κώδικας εντός του κύκλου θα εκτελεστεί μια φορά για κάθε ιδιότητα.

Κύκλος των ιδιοτήτων του αντικειμένου:

πρότυπο

var person = {fname:"Bill", lname:"Gates", age:62}; 
for (x in person) {
    txt += person[x];
}

Προσπαθήστε το προσωπικά

Προσθήκη νέων ιδιοτήτων

Μπορείτε να προσθέσετε νέες ιδιότητες μέσω απλής αναπαράστασης.

Αν υποθέσουμε ότι το αντικείμενο person υπάρχει - τότε μπορείτε να προσθέσετε νέες ιδιότητες:

πρότυπο

person.nationality = "English";

Προσπαθήστε το προσωπικά

Δεν μπορείτε να χρησιμοποιήσετε προκαθορισμένα λέξεις ως ονόματα ιδιοτήτων (ή μεθόδων). Χρησιμοποιήστε τους κανόνες ονοματοδοσίας του JavaScript.

Διαγραφή ιδιοτήτων

delete Κλειδιά από το αντικείμενο διαγράφονται ιδιότητες:

πρότυπο

var person = {fname:"Bill", lname:"Gates", age:62};
delete person.age;   // ή delete person["age"];

Προσπαθήστε το προσωπικά

delete Οι λέξεις-κλειδιά θα διαγράψουν τόσο την τιμή της ιδιότητας όσο και την ίδια την ιδιότητα.

Μετά την αφαίρεση, η ιδιότητα δεν είναι διαθέσιμη μέχρι να προσστεθεί ξανά.

delete Οι επαγωγές είναι σχεδιασμένες για ιδιότητες αντικειμένων. Δεν έχουν καμία επίδραση σε μεταβλητές ή συναρτήσεις.

delete Οι επαγωγές δεν πρέπει να χρησιμοποιούνται για προκαθορισμένες ιδιότητες αντικειμένων JavaScript. Αυτό μπορεί να προκαλέσει την αποτυχία της εφαρμογής.

Τιμή ιδιότητας

Όλες οι ιδιότητες έχουν όνομα. Επιπλέον, έχουν τιμή.

Η τιμή είναι μια ιδιότητα της ιδιότητας.

Άλλες ιδιότητες περιλαμβάνουν: αναγνωρίσιμες, ρυθμιζόμενες, γραμμένες.

Αυτές οι ιδιότητες καθορίζουν τον τρόπο πρόσβασης στις ιδιότητες (είναι αναγνωρίσιμες ή γραμμένες;)

Στο JavaScript, όλες οι ιδιότητες είναι αναγνωρίσιμες, αλλά μόνο οι τιμές μπορούν να τροποποιηθούν (μόνο όταν οι ιδιότητες είναι γραμμένες).

(Το ECMAScript 5 έχει μεθόδους για την απόκτηση και ρύθμιση των χαρακτηριστικών όλων των ιδιοτήτων)

Πρωτοτυπικές ιδιότητες

Τα αντικείμενα JavaScript κληρονομούν τις ιδιότητες των πρωτοτύπων τους.

delete Οι λέξεις-κλειδιά δεν θα διαγράψουν τις κληρονομικές ιδιότητες, αλλά αν διαγράψετε κάποια πρωτοτυπική ιδιότητα, θα επηρεάσει όλα τα αντικείμενα που κληρονομούν από το πρωτότυπο.