Ben tornato.
Quindi questo è il nostro ultimo video sugli oggetti javascript per le prossime unità.
E in questo video tratteremo i metodi javascript prima di farlo.
Voglio solo spiegare il mio set up.
Ho un semplice file HTML e tutto quello che ho sono alcune note qui solo per noi da seguire.
Quindi non devi assolutamente scriverlo se vuoi seguirlo.
Puoi farlo semplicemente nella console o creare il tuo file ma non ti serve questa pagina.
Quindi quello che ho intenzione di fare è iniziare a parlare di quali metodi sono così in javascript.
Abbiamo visto che possiamo creare un oggetto che ne farà uno chiamato LBJ.
E possiamo mettere qualunque tipo di dati vogliamo invece di quell'oggetto.
Quindi potremmo avere un nome che è una stringa Charke.
Puoi avere un'età che è un numero che possiamo avere è bello che è un booleano che possiamo
avere amici che è un array e gli amici possono essere solo Bob e Tina.
Ma quello che mi interessa mostrarti in questo video è che possiamo effettivamente aggiungere funzioni come proprietà
a un oggetto.
In quel caso sono in realtà chiamati metodi piuttosto che proprietà.
Quindi, di nuovo, un metodo è solo una funzione che è una proprietà invece di un oggetto.
Quindi posso farne uno qui.
Chiamiamolo aggiungere add è una funzione e richiede due numeri xey e tutto ciò che fa.
Se indentro correttamente, restituisco x più y.
Quindi la grande novità qui è che stiamo semplicemente aggiungendo una funzione.
Non importa ciò che fa la funzione.
Qualsiasi funzione funzionerà qui e la stiamo semplicemente impostando come valore per la proprietà.
E quindi se premo invio qui e guardiamo RBJ puoi vedere che è un oggetto e abbiamo 45 amici di età.
Un array è un bel nome falso Chuck.
E poi aggiungere è una funzione.
Quindi, se volessimo chiamare add non potessimo semplicemente scrivere add, ciò che dobbiamo fare è scrivere obey j punto e
proprio così e quindi diamo due numeri 10 e 5 e otteniamo 15.
Quindi chiamarlo funziona nello stesso modo in cui abbiamo bisogno di parentesi.
Abbiamo bisogno di argomenti.
L'unica differenza è che non è solo per conto proprio.
In realtà ora è al posto dell'oggetto OPG.
Quindi questo potrebbe sembrare un po 'familiare da qualcosa di simile.
Contrl Balog esattamente nello stesso formato.
E si scopre che il consolato era un oggetto e log è un metodo su quell'oggetto e lo
richiama proprio come abbiamo chiamato oggetto punto AD.
Quindi funzionano esattamente allo stesso modo.
Quindi ti starai chiedendo perché mai vorremmo aggiungere un metodo a un oggetto.
Perché non solo le nostre funzioni sono definite separatamente in questo modo.
Perché abbiamo bisogno di aggiungere all'interno dell'oggetto RBJ.
Ci sono alcuni motivi.
La prima è che ti aiuta a mantenere il codice organizzato in modo da poter raggruppare le cose logicamente
insieme per illustrare uno dei vantaggi dell'aggiunta delle tue funzioni come metodo su un oggetto.
Ho intenzione di fare un rapido esempio qui.
Quindi torneremo al nostro esempio preferito di cani e gatti e diciamo che
volevo creare un metodo chiamato speak.
E supponiamo di voler fare una funzione chiamata parlare e parlare tutto quello che deve fare è
restituire cosa.
Quindi questo è per un cane o un lupo.
E questo è tutto.
Molto semplice.
E posso chiamare parlare così e capisco cosa.
Supponiamo che io voglia anche un metodo chiamato Speak to work for cat e che dovrebbe tornare.
Miao.
Bene, se scrivo la
funzione, parlo e ritorna miagolio.
E questa volta chiamo parla, ottengo Meow.
Ma ora non ho modo di accedere al mio discorso originale che ha restituito Wolf.
Quindi quello che è successo qui è qualcosa chiamato collisione di namespace.
Quindi questo è solo un modo elegante per dire che abbiamo due cose diverse che hanno lo stesso nome.
Quindi, se invece abbiamo aggiunto queste funzioni come metodi a un oggetto, potremmo avere due cose diverse
chiamate speak.
Inserendoli in spazi diversi per i nomi.
fare ciò che potremmo semplicemente creare qualcosa chiamato var dog space e questo è solo un oggetto vuoto.
Quindi è davvero semplice
E poi diciamo solo che dog space dot speak è una funzione.
E restituiamo cosa.
E facciamo la stessa cosa per lo spazio gatto Vark.
Quindi lo spazio gatto spaziale Dog è solo un nome per inventarsi e saranno solo oggetti vuoti a
cui aggiungeremo i nostri metodi.
Quindi posso dire che il punto dello spazio del gatto parla uguale alla funzione e tutto ciò che facciamo qui è il ritorno.
Si.
Quindi, se voglio chiamare parlare per un cane, voglio che restituisca Wolf.
Tutto quello che devono fare è leggere lo spazio Dog e se vogliono vedermi
sapere tutto quello che devo fare è eseguire cat space dot speak.
Quindi, ancora una volta è solo una fantasia.
Quindi questo è solo un bel modo di organizzare il nostro codice.
Prima di tutto, possiamo avere un sacco di metodi che sono raggruppati logicamente insieme, quindi tutti i metodi del cane
entrano in quello spazio per i cani tutti i metodi del gatto vanno in quello spazio gatto.
Ma è anche un modo per evitare queste collisioni nello spazio dei nomi.
Ora so che sei stanco di cani e gatti e non sembra un esempio
del mondo reale ma ti posso assicurare la stessa logica esatta per qualcosa come commenti, post e tag.
Potresti avere un metodo chiamato nuovo o cancella.
Per i commenti potremmo averne uno chiamato delete posts.
Un altro chiamato Elimina per gli utenti e abbiamo bisogno di questi spazi dei nomi in modo
che non tutti i conflitti.
Quindi, piuttosto che scrivere solo eliminazioni, avremmo l'eliminazione dell'utente e quindi potremmo avere l'eliminazione post-START e il
commento delete e vedremo cose del genere tutte le volte che riceviamo tabac e programmazione.
Quindi, per riassumere quello che abbiamo trattato finora, siamo in grado di aggiungere metodi a un oggetto, il che
significa che stiamo aggiungendo una funzione come proprietà e possiamo aggiungerla come qualsiasi altra proprietà.
Trattalo come una stringa o un numero.
E questo perché le funzioni sono valori in javascript.
Possiamo passarli in giro.
Possiamo aggiungerli come valore a un oggetto che è davvero molto utile.
La seconda cosa di cui abbiamo parlato è perché lo faresti mai.
abbiamo parlato è che impedisce le collisioni nello spazio dei nomi, il che significa semplicemente che possiamo raggruppare il codice.
La prima ragione per cui
Ciò significa che possiamo avere proprietà, funzioni e metodi denominati esattamente allo stesso modo, tranne che
sono memorizzati in oggetti diversi in modo che non siano in conflitto