02. Ιδιότητες (properties) αντικειμένων JavaScript

Object Properties


Οι ιδιότητες (properties) είναι το πιο σημαντικό μέρος κάθε αντικειμένου JavaScript.


Ιδιότητες JavaScript

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

Ένα αντικείμενο JavaScript είναι μια συλλογή μη διατεταγμένων ιδιοτήτων.

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


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

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

objectName.property         // person.age

ή

objectName["property"]      // person["age"]

ή

objectName[expression]      // x = "age"; person[x]

The expression must evaluate to a property name.

Παράδειγμα 1

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

Δοκιμάστε τον εαυτό σας »

Παράδειγμα 2

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

Δοκιμάστε τον εαυτό σας »


JavaScript βρόχος for …in

Η JavaScript εντολή for...in διατρέχει μέσα από τις ιδιότητες ενός αντικειμένου.

Σύνταξη

for (variable in object) {
  // code to be executed
}

Το μπλοκ κώδικα στο εσωτερικό του for...in βρόχου θα εκτελεστεί μία φορά για κάθε ιδιότητα.

Δημιουργία βρόχου μέσω των ιδιοτήτων ενός αντικειμένου:

Παράδειγμα

var person = {fname:"John", lname:"Doe", age:25};

for (x in person) {
  txt += person[x];
}

Δοκιμάστε τον εαυτό σας »


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

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

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

Παράδειγμα

person.nationality = "English";

Δοκιμάστε τον εαυτό σας »


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

Η delete λέξη-κλειδί διαγράφει μια ιδιότητα από ένα αντικείμενο:

Παράδειγμα

var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
delete person.age;   // or delete person["age"];

Δοκιμάστε τον εαυτό σας »

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

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

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

Ο τελεστής delete δεν πρέπει να χρησιμοποιείται σε προκαθορισμένες (predefined) ιδιότητες αντικειμένων JavaScript. Μπορεί να διακόψει τη λειτουργία (crash) της εφαρμογής σας.


Χαρακτηριστικά ιδιοτήτων (property attributes)

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

Η τιμή είναι ένα από τα χαρακτηριστικά της ιδιότητας.

Άλλα χαρακτηριστικά είναι: απαριθμήσιμα, διαμορφώσιμα και εγγράψιμα.

Αυτά τα χαρακτηριστικά καθορίζουν τον τρόπο πρόσβασης στην ιδιότητα (είναι αναγνώσιμη;, είναι εγγράψιμη;)

Στη JavaScript, όλα τα χαρακτηριστικά μπορούν να διαβαστούν, αλλά μόνο το χαρακτηριστικό τιμής μπορεί να αλλάξει (και μόνο αν η ιδιότητα είναι εγγράψιμη).

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


Ιδιότητες Πρωτοτύπου (Prototype Properties)

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

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


Days
Hours
Minutes

02. Ιδιότητες (properties) αντικειμένων JavaScript

Κοινοποίηση

Share on facebook
Share on twitter

Ακολουθήστε μας

Αρέσει σε %d bloggers: