Πρωτότυπο αντικειμένων JavaScript

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

Στο προηγούμενο κεφάλαιο, μάθαμε πώς να χρησιμοποιούμεΚατασκευαστής αντικειμένων:

Instance

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
var myFather = new Person("Bill", "Gates", 62, "blue");
var myMother = new Person("Steve", "Jobs", 56, "green");

Δοκιμάστε το προσωπικά

Είμαστε αποφασισμένοι, ότιΑδυναμίαΠροσθήκη νέων ιδιοτήτων σε κατασκευαστές υπάρχοντων αντικειμένων:

Instance

Person.nationality = "English";

Δοκιμάστε το προσωπικά

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

Instance

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
    this.nationality = "English";
}

Δοκιμάστε το προσωπικά

Κληρονομικότητα πρωτοτύπων

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

Τα αντικείμενα Date κληρονομούνται από το Date.prototype. Τα αντικείμενα Array κληρονομούνται από το Array.prototype. Τα αντικείμενα Person κληρονομούνται από το Person.prototype.

Το Object.prototype βρίσκεται στην κορυφή της αλυσίδας κληρονομικότητας των πρωτοτύπων:

Τα αντικείμενα Date, Array και Person κληρονομούνται από το Object.prototype.

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

Συχνά, θέλετε να προσθέσετε νέες ιδιότητες (ή μεθόδους) σε όλα τα υπάρχοντα αντικείμενα μιας δεδομένης τύπου.

Ως επίσης, μπορείτε να προσθέσετε νέες ιδιότητες (ή μεθόδους) στον κατασκευαστή αντικειμένων.

Χρήση Προτύπος Ιδιότητες

Η προτύπος του JavaScript επιτρέπει επίσης την προσθήκη νέων ιδιοτήτων στον κατασκευαστή αντικειμένων:

Instance

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
Person.prototype.nationality = "English";

Δοκιμάστε το προσωπικά

Η προτύπος του JavaScript prototype επιτρέπει επίσης την προσθήκη νέων μεθόδων στον κατασκευαστή αντικειμένων:

Instance

function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
Person.prototype.name = function() {
    επιστρέφει αυτό το firstName + " " + this.lastName;
};

Δοκιμάστε το προσωπικά

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