In questo video faremo alcuni miglioramenti a questo elenco.
Quindi ecco la nuova versione che proveremo a fare e ha un nuovo comando che è delete e
in più il comando list ha cambiato il modo in cui stampa da usare.
Quindi ti mostrerò come si presenta.
Aggiornerò la pagina e inizierò aggiungendo un nuovo da fare.
E aggiungiamo uccidere Voldemort.
E questa volta mi dice di uccidere Voldemort aggiunto alla lista e poi se guardo la lista ottengo questa bella
piccola stampa dove ogni oggetto è sulla sua stessa linea.
Quello che avevamo prima è che ha appena stampato l'intero array su una riga.
Quindi ora li prendiamo su righe separate e poi posso eliminarne uno digitando delete e mi
chiede un indice.
Quindi diciamo che voglio eliminare kill Voldemort.
Compio questo compito.
Digito il numero uno e mi dice di fare è rimosso.
E potrei verificarlo digitando la lista e vedo ora che la mia lista ha solo un oggetto.
Quindi questo è ciò a cui miriamo qui.
Andiamo avanti e iniziamo aggiungendo alcune di queste funzionalità alla nostra vecchia versione dell'app.
La prima cosa che voglio fare è solo dimostrare come funziona il nostro comando LIST.
Quindi aggiungerò qualcosa di nuovo.
Solo alcune lettere casuali.
E ora se scrivo una lista, stampa l'array tutto in una riga.
Quindi quello che voglio invece è stampato su linee separate come se fossimo fin qui dove abbiamo ottenuto
questo simpatico divisore di asterisco e poi nel mezzo abbiamo zero colon di una nuova tartaruga, due punti e così via per sempre
che dobbiamo realizzare quello non possiamo solo contare sul log tutto da fare.
Avremo bisogno di scorrere le cose da fare e stampare ognuna individualmente.
Quindi abbiamo alcune scelte.
Possiamo usare un ciclo for o un ciclo For Each.
Userò per ciascuno perché è quello che preferisco.
Ma è davvero solo una questione di preferenza.
Quindi, per fare qualcosa per ognuno, gli diamo questa funzione e ci metteremo solo a fare lì dentro.
Ricorda che solo il nome che creiamo un segnaposto e tutto quello che faremo è cancellare quel log
da fare e poi ci sbarazzeremo di questo e salveremo.
Quindi andiamo a fare un loop per fare è solo dargli un nome da fare.
Questo è un segnaposto per ogni individuo da fare.
E stampiamo solo ciascuno per aggiornare la pagina.
Aggiungiamone uno nuovo.
Lettere casuali di nuovo.
Questa è la lista.
E ora abbiamo due linee.
Quindi il prossimo passo sarà aggiungere quei numeri con un ciclo For Each.
Non abbiamo immediatamente accesso all'indice o al numero a cui ogni articolo corrisponde.
Potremmo fare qualcosa di un po 'hacky come questo, nel caso in cui dovremmo fare a Doo l'indice di
ciò che farebbe con la nuova tartaruga, per farlo.
E poi questo ci restituirebbe un numero.
Quindi non è una soluzione ideale.
Quello che possiamo fare è solo aggiungere un secondo argomento per ogni funzione che chiamerò indice può essere chiamato qualsiasi
cosa, naturalmente, forse solo I.
E questo si riferirà all'indice.
Quindi il primo sarà l'oggetto da fare e questo sarà l'indice di quel particolare da
fare.
Quindi ogni volta che otteniamo entrambi.
Quindi, per questo primo elemento da fare sarà il nuovo indice tartaruga sarà zero per questo elemento da fare sarà
questa intera stringa di lettere e io o indice sarà uno.
Quindi tutto ciò che vogliamo fare è stamparlo.
Quindi il formato che ho seguito era il numero di due punti indice che fare con lo spazio tra.
In modo che assomigli a questo, più.
E poi abbiamo bisogno del nostro colon e del nostro spazio, oltre al da fare.
Andiamo avanti e provalo.
Quindi aggiornerò e aggiungerò un nuovo a questa volta dai libri di testo di Hogwarts.
OK.
Ora tutti i tipi di lista e vedo che ho entrambi i miei da usare su linee separate ciascuna con un numero accanto
ad essa.
Eccezionale.
Quindi l'ultima cosa che voglio fare è aggiungere quegli asterischi nella lista come abbiamo qui.
Quindi è molto semplice.
Tutto quello che dobbiamo fare è un contro. Ma log star star star.
Penso di averlo fatto 10.
Non importa.
E ho intenzione di copiarlo prima.
E poi dopo il foreach.
E questo ci darà quello che vogliamo.
Quindi lo dimostrerò.
Vai alla nostra versione di aggiornamento e lista dei tipi e otteniamo i nostri piccoli asterischi che circondano la nostra lista.
Quindi la prossima funzionalità qui sarà cancellata.
Quindi ho intenzione di tornare alla mia lista per quanti anni ho intenzione di aggiungere una nuova voce
come le istruzioni qui.
Quindi elimina e rimuoverà uno specifico da fare.
Quindi il modo in cui funziona è che prima devo fornire l'indice di ciò che stiamo per eliminare e
quindi lo cancelliamo.
Quindi aggiungo un altro se l'input equals è uguale a delete.
Dobbiamo quindi chiedere che l'indice di 2 sia cancellato e quindi dobbiamo cancellarlo per farlo, ecco i nostri passi
qui.
Prima di chiedere l'indice.
È piuttosto semplice.
Creeremo semplicemente una variabile denominata indice
perché prompt inserisci l'indice da fare per eliminare.
Quindi questo ci darà l'indice come zero.
E poi dobbiamo usare quell'indice per rimuovere quell'elemento dall'array.
E questo è un po 'più complicato.
In realtà non abbiamo parlato di come eliminare qualcosa da un array.
A parte l'uso di POP e MAIUSC ma quelli sono rimossi solo dalla fine di un array.
Ma l'inizio
Quello che vogliamo fare qui è potenzialmente rimuovere da qualsiasi punto all'interno della matrice.
Quindi c'è un altro metodo chiamato splice.
E quindi ti mostrerò come usiamo il posto.
splice e questo fondamentalmente farà un taglio e rimuoverà un numero specifico di elementi da una matrice.
Scriveremo per usare quella
Quindi il primo argomento è dove vogliamo fare quel taglio.
Quindi questo sarà l'indice fornito dall'utente e quindi il secondo argomento è il numero di elementi che
si desidera eliminare.
Seguendo quell'indice
Quindi vogliamo solo eliminare un elemento.
Quindi questo è tutto ciò che dobbiamo fare.
Un indice di giuntura che chiederà all'utente quale dovere desidera eliminare.
Dammi un numero
Diciamo che l'utente digita in tre.
Quindi, per iniziare, splice troverà l'oggetto con l'indice 3 e cancellerà un elemento.
Se l'avessimo aggiunto, elimineremmo 10 elementi dopo quell'indice.
Quindi ne vogliamo solo uno.
Andiamo avanti e provalo nel nostro browser.
Ho intenzione di aggiornare e iniziamo aggiungendo alcuni da fare.
Quindi il primo.
I piatti devono assolutamente farlo adesso.
Il
prossimo fare il bucato.
Probabilmente posso aspettare ancora qualche settimana prima di farlo.
E l'ultimo qui.
Cenare.
OK.
Quindi cerchiamo di elencarli e otterremo questa bella lista qui.
Comunque abbiamo cinque nuove tartarughe Quindi diciamo che voglio eliminare trovare nuove tartarughe sia perché ho già comprato una nuova tartaruga o
ho avuto un cambiamento di cuore e ho capito che le tartarughe sono probabilmente il peggior animale domestico
che si possa mai possedere.
Quindi cancelliamolo e digiti delete.
Ora mi chiede un indice in modo che sia indice zero e sarebbe bello se avessimo un piccolo feedback.
Detto articolo eliminato, così possiamo aggiungere quello dopo.
Ma per verificare che funzionasse.
Se scriviamo la lista vediamo che il nostro array è ora cambiato.
Ora non abbiamo più comprato una nuova tartaruga e non facciamo altro che lavare i piatti e cenare,
quindi lasciamo perdere e aggiungiamo un po 'di feedback.
Iniziamo quando si cancella qualcosa cancelleremo quel registro per fare diciamo cancellato da fare e lo salviamo e
facciamo lo stesso per quando lo aggiungiamo faremo un registro di concerti aggiunto per fare solo così che
vediamo cosa sta succedendo.
E mentre sono qui sto notando che questo ciclo sta diventando un po 'lungo, quindi quello che
probabilmente vorremmo fare è scomporlo in funzioni separate.
Quindi andremo a refactoring in modo così funzionale non cambierà nulla su come funziona.
È solo questione di come è organizzato il codice.
Quindi ecco come vorrei che funzionasse.
Abbiamo una funzione separata qui.
Ho intenzione di copiare tutto questo e tagliarlo e la nostra funzione sarà chiamata List per
fare questo e questo è tutto ciò che inseriremo se questo input è uguale alla
lista, allora andremo giù qui e definire l'elenco da fare.
E stiamo solo incollando quel codice e questo è tutto.
Proprio come questo.
Ho intenzione di ripetere la stessa cosa.
Quindi, se gli input dell'utente sapessero dove copiare questo codice, lo elimineremo e chiameremo semplicemente una funzione per scrivere
il codice.
Aggiungo per fare quindi ho bisogno di scrivere la mia funzione dovevo incollare quel codice nel rientro in modo corretto e salvarne
uno in più.
Se l'utente inserisce l'eliminazione aggiungerà una nuova funzione chiamata Elimina per farlo, creeremo la funzione
di cancellazione qui sotto per fare e incollare il codice nello spazio in modo corretto e ora dovremmo
essere pronti.
Quindi puoi vedere che non abbiamo cambiato la funzionalità, ma abbiamo ripulito molto
questa logica.
Quindi il nostro ciclo è molto più breve e più facile da vedere cosa succede se l'utente inserisce la lista le ordinazioni
se l'utente entra in nuove cose da fare per l'utente entra cancella quella cosa da fare e poi controlla e
chiede di nuovo l'input e ripete l'intero processo.
Quindi controlliamo che funzioni.
Ricarica la pagina.
Cosa vorremmo fare.
Facciamo una lista e otteniamo la nostra lista.
Andiamo avanti e aggiungiamo un nuovo piatto da finire.
Facciamo un altro elenco e otteniamo elencati i nostri due.
Ora se togliamo una cancellazione questa volta.
Ho comprato un indice tartaruga 0.
Lo rimuoverò.
Devo cancellare il mio messaggio e andare avanti e uscire.
Mi dice che va bene.
Questo è tutto ciò che faremo per ora.
Ci sono alcune cose che voglio riassumere.
Il primo dei quali è che usiamo uno per ciascuno per elencare il da fare.
E potremmo passare in una seconda discussione per essere nominati qualsiasi cosa.
E questo si riferisce all'indice di ogni oggetto che è passato.
L'altra cosa che abbiamo fatto è venuta a conoscenza della giunzione e della giunzione di come abbiamo eliminato un elemento
specifico dall'array.
Ci vogliono due argomenti.
La posizione della cosa da eliminare e quindi un numero di quanti elementi eliminare dopo quell'indice.
L'ultima cosa di cui voglio parlare qui è che abbiamo rifattorizzato le cose in funzioni separate, quindi
anche se non abbiamo chiamato queste funzioni più di una volta, le abbiamo scritte solo una volta.
Riguarda l'organizzazione e rende il nostro codice semplice e breve all'interno di questo ciclo logico pesante