Προσαρμοσμένα αντικείμενα (Custom objects)

Όπως είδαμε, ένα αντικείμενο είναι ένα σετ ή ένα πακέτο από μεταβλητές και/ή συναρτήσεις. Οι μεταβλητές ενός αντικειμένου λέγονται properties (χαρακτηριστικά) και οι συναρτήσεις methods. Επίσης κάθε αντικείμενο μπορεί να αντιλαμβάνεται μια σειρά από συμβάντα. Η σειρά με την οποία έχουν δηλωθεί χαρακτηριστικά και συναρτήσεις είναι αδιάφορη. Η αναφορά σε ένα χαρακτηριστικό ή μια συνάρτηση ενός αντικειμένου γίνεται με τη χρήση της τελείας ή του τελεστή (.).

Για παράδειγμα: όνομαΑντικειμένου.όνομαΧαρακτηριστικού.

Δημιουργία ενός αντικειμένου

Αρχικά, θα δημιουργήσουμε ένα αντικείμενο έστω με το όνομα myCar το οποίο αρχικά θα έχει μόνο χαρακτηριστικά (properties). Αυτό γίνεται σε δύο βήματα. Πρώτα, δηλώνετε το αντικείμενο με τη λέξη let και το δημιουργείτε με τον τελεστή new.

let myCar = new Object();

ή για πιο σύντομα:

let myCar = {};

Στη συνέχεια προσθέτετε τα χαρακτηριστικά με τις αντίστοιχες τιμές τους.

myCar.brand = "Fiat"; 
myCar.model = "Grande Punto";
myCar.year = 2009;
myCar.price = 14000;

Αν επιθυμείτε τα χαρακτηριστικά να μην έχουν αρχικές τιμές μπορείτε να πληκτρολογήσετε:

myCar.brand = null; 
myCar.model = null;
myCar.year = null;
myCar.price = null;

και να προσθέσετε ή να αλλάξετε τις τιμές αργότερα π.χ.:

myCar.brand = "Fiat";

Επίσης μπορείτε να αλλάζετε τις τιμές των χαρακτηριστικών δυναμικά π.χ.:

myCar.price = 15800;

Για να προσθέσετε μία ή περισσότερες μεθόδους σε ένα προσαρμοσμένο αντικείμενο πρσθέτετε μια συνάρτηση όπως παρακάτω:

myCar.brand = "Fiat"; 
myCar.model = "Grande Punto";
myCar.year = 2009;
myCar.price = 14000;

myCar.getAge = function() {
	let d = new Date();
	return d.getFullYear() - this.year;
};

Για να καλέσετε τη μέθοδο του παραπάνω αντικειμένου γράφετε myCar.getAge()

Παράδειγμα:

console.log(myCar.getAge());

5