Prototipo dell'oggetto JavaScript
- Pagina precedente Costruttore di oggetti JS
- Pagina successiva Riferimento agli oggetti JS
Tutti gli oggetti JavaScript ereditano proprietà e metodi dai prototipi.
Nel capitolo precedente, abbiamo imparato come utilizzareCostruttore di oggetti:
Esempio
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");
Abbiamo riconosciuto che si desideraImpossibileAggiungere nuove proprietà al costruttore di oggetti esistenti:
Esempio
Person.nationality = "English";
Per aggiungere una nuova proprietà al costruttore, è necessario aggiungerla alla funzione costruttore:
Esempio
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; this.nationality = "English"; }
Ereditarietà prototipale
Tutti gli oggetti JavaScript ereditano proprietà e metodi dai prototipi.
L'oggetto Date eredita da Date.prototype. L'oggetto Array eredita da Array.prototype. L'oggetto Person eredita da Person.prototype.
Object.prototype si trova alla fine della catena di ereditarietà prototipale:
L'oggetto Date, l'oggetto Array e l'oggetto Person ereditano da Object.prototype.
Aggiungere proprietà e metodi agli oggetti
A volte, si desidera aggiungere nuove proprietà (o metodi) a tutti gli oggetti esistenti di un tipo dato.
A volte, potresti voler aggiungere nuovi attributi (o metodi) ai costruttori di oggetti.
Uso Prototype
Attributi
L'attributo prototype di JavaScript permette anche di aggiungere nuovi attributi agli costruttori di oggetti:
Esempio
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; } Person.prototype.nationality = "English";
L'attributo prototype di JavaScript permette anche di aggiungere nuovi metodi agli costruttori di oggetti:
Esempio
function Person(first, last, age, eyecolor) { this.firstName = first; this.lastName = last; this.age = age; this.eyeColor = eyecolor; } Person.prototype.name = function() { return this.firstName + " " + this.lastName; };
Modificare soloVoi stessiL'原型. Non modificare mai l'原型 degli oggetti JavaScript standard.
- Pagina precedente Costruttore di oggetti JS
- Pagina successiva Riferimento agli oggetti JS