Bentornato nel video precedente abbiamo visto che quando viene utilizzata la nuova parola chiave viene aggiunta
una proprietà all'oggetto creato dalla funzione di costruzione chiamata donder produ.
Questa proprietà si collega alla proprietà prototype sulla funzione di costruzione.
Ma quale valore ha questa proprietà prototipo avere la proprietà prototype è un oggetto che può avere
metodi e proprietà collocati su di esso.
Questi metodi e proprietà sono condivisi e accessibili da qualsiasi oggetto creato da quella funzione
di costruzione.
in questo esempio in cui l'aggiunta di una proprietà sul prototipo chiamato è istruttore e l'impostazione del valore è true.
Quando viene utilizzata la nuova parola chiave
Ora tutti gli oggetti che sono stati creati da questo costruttore utilizzando la nuova parola chiave hanno accesso
a is instr. proprietà.
Ma come è successo nel mondo?
Abbiamo aggiunto una proprietà sull'oggetto prototipo person e all'improvviso due oggetti apparentemente non
correlati hanno accesso ad esso.
La risposta sta nel protocollo.
Dal momento che questi oggetti hanno un collegamento a un prototipo di punti personali, non possono accedere a nulla al suo interno.
In realtà questo è in realtà il modo esatto in cui javascript trova metodi e proprietà sugli oggetti.
E quello che abbiamo appena descritto è qualcosa chiamato la catena del prototipo.
Parliamo un po 'di più a riguardo.
Abbiamo appena visto che quando abbiamo aggiunto una proprietà all'oggetto prototipo della persona era accessibile dagli oggetti
creati dalla funzione di costruzione utilizzando la nuova parola chiave.
Abbiamo quindi affermato che il motivo per cui ciò è stato possibile è dovuto al modo in cui javascript
cerca metodi e proprietà.
Facciamo un esempio.
Ho intenzione di creare una variabile chiamata R e impostarla uguale a un array vuoto.
Quello che ho fatto in realtà è una scorciatoia per scrivere nuovi array.
Io uso il costruttore incorporato in javascript chiamato array e trovo un nuovo oggetto da esso.
Sappiamo anche in javascript che i nostri array hanno un metodo chiamato Push che aggiunge qualcosa alla fine
di un array.
Ma dove è definito questo metodo push e in che modo javascript sa dove trovarlo.
La risposta ancora una volta è a Dunder Prato.
Cancelliamo quello.
D'oh.
La variabile R e vediamo che tutto questo oggetto ha una proprietà chiamata lenth, ma da dove proviene
il metodo push.
Bene, esaminiamo cos'è il Dunder Prato di questa nostra variabile.
È infatti il ​​prototipo del punto dell'array che possiamo dimostrare che dimostrando che sotto Prato tripla
è uguale, un prototipo radar risulta vero.
Quindi il modo in cui javascript trova i metodi e le proprietà è guardando l'oggetto e se
non riesce a trovare il metodo o la proprietà che stai cercando, va a quegli oggetti che lo guardano.
Questo continua a succedere finché non viene trovata la proprietà o il metodo.
E se non viene trovato l'espressione valuta a indefinito possiamo vederlo ulteriormente con
un altro esempio in javascript.
Ogni oggetto ha un metodo chiamato ha una propria proprietà che restituisce true se l'oggetto ha una
proprietà specificata come parametro del metodo has in proprietà.
Cosa significa.
A volte un esempio di codice vale più di mille parole.
Torniamo alla nostra variabile.
Cercheremo di vedere se la nostra variabile ha una sua proprietà di lunghezza, ma dove si
trova questo metodo.
Diamo un'occhiata alla nostra variabile con la console punto DIR.
Puoi anche solo digitare Diyar ma non sembra essere qui.
Quindi cosa fa javascript.
Risale la catena del prototipo e trova il prossimo sotto-prodotto che possiamo vedere che il prossimo sotto
Prato è il prototipo dell'oggetto.
E qui è dove si trova quel metodo.
Possiamo illustrare anche questo con il diagramma.
Ancora una volta i cerchi sono funzioni e i quadrati sono oggetti.
Qui vediamo una variabile R che ha un problema di Prato di un prototipo radar.
Il prototipo dell'array up è anch'esso un oggetto e ha il suo prato Prato che punta
al prototipo dell'oggetto ogni oggetto in javascript contiene l'oggetto del prototipo.
Ecco come metodi come la proprietà privata provengono dal Dunder Prato dell'oggetto che il prototipo è nullo
ed è qui che si ferma la catena del prototipo.
visto come javascript guarderà un oggetto e vedrà se esiste il metodo o la proprietà che stai cercando.
Per ricapitolare analizziamo come javascript trova metodi e proprietà usando la catena del prototipo, abbiamo
E se no andrà a quegli oggetti Dondre Prato e ripeterà fino a quando non c'è un altro programma Dondre
nel prossimo video.
Parleremo più del valore della proprietà del prototipo e della pratica con un esercizio.
Guardaci dentro