Υποενότητα 6.3: Συναρτήσεις δόμησης

Προσθήκη Ιδιοτήτων και Μεθόδων

Υπάρχουν δύο διαφορετικές επιλογές όταν θέλουμε να δημιουργήσουμε νέες ιδιότητες / μεθόδους.

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

Παράδειγμα:

function myObject (n,a,j) { 
this.name= n; 
this.age = a; 
this.job=j; 
this.nameAge = function(){
                return this.name + " " + this.age;
    }
}

var student1 = new myObject("Aris","24");

var student2 = new myObject("Peter","24");

student1.hobby = "cinema";

student1.addMethod = function () { return this.job + " " + this.hobby; };

Σε αυτή την περίπτωση, μόνο το αντικείμενο "student1" έχει τη νέα ιδιότητα και τη μέθοδο.

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

Τι νομίζετε ότι θα συμβεί αν προσπαθήσουμε να αποκτήσουμε πρόσβαση στο αντικείμενο "hobby" στο αντικείμενο "student2"; Ανοίξτε την κονσόλα σας και πληκτρολογήστε τον κατάλληλο κώδικα για να δείτε το αποτέλεσμα.

View source:

Η κονσόλα θα μας δώσει το μήνυμα: "undefined". Μόνο το "student1" έχει αυτή την ιδιότητα.

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

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