
Nella maggior parte dei casi utilizziamo matrici Quando lavoriamo con JavaScript o con qualsiasi altra lingua, Dal momento che ci permettono una migliori manipolazione e raggruppamento di certi insiemi di dati caratteristiche simili.
Tra tutte le possibili operazioni di che posso fare una matrice, uno dei più comune è il di cancellato o lo svuotamento, che renderà la matrice verrà convertito in un matrice vuota.
Come svuotare o eliminare un array in Javascript e le sue implicazioni
Per effettuare la lo svuotamento o eliminati da un matrice Possiamo fare uso di due implementazioni o soluzioni, che vedremo più avanti. Si supponga che Abbiamo una matrice in una variabile MyArray con il seguente contenuto:
1 | var miArray = [1, 2, 3, 4, 5]; |
Possiamo eseguire il lo svuotamento della matrice utilizzando la assegnazione di un matrice vuota per la variabile in questione:
1 | miArray = []; |
Così la variabile MyArray Ora sarà puntamento per un matrice vuota. Vale a dire, Non si tratta di matrice precedente vuota, ma che la variabile sia rivolta ad uno nuova posizione di memoria. Per capire questo, Si supponga che le seguenti variabili:
1 2 3 | var miArray = [1, 2, 3, 4, 5]; var miOtroArray = miArray; |
Se ora, Eseguiamo la eliminazione della prima matrice come abbiamo visto in precedenza:
1 2 3 4 5 | miArray = []; //Los valores de las variables anteriores son: //miArray = []; //miOtroArray = [1, 2, 3, 4 ,5]; |
la variabile miOtroArray Essa continuerà puntando alla posizione di memoria che ospita il matrice aveva precedentemente assegnato la variabile MyArray, perché con questa soluzione, l'unica cosa che facciamo è assegnare alla variabile una nuova matrice vuota in un'altra posizione di memoria.
Per evitare questo, un altro Metodo di scarico o cancellato di un matrice in JavaScript è attraverso la Proprietà. lunghezza, Così, Abbiamo svuotato il nostro primo array nel modo seguente:
1 2 3 4 5 | miArray.length = 0; //No reasignamos a un nuevo valor, sino que reducimos la longitud del actual. //Los valores de las variables anteriores son: //miArray = []; //miOtroArray = []; |
In questo modo, Stiamo facendo che la lunghezza del nostro matrice corrente è zero, così sei tu lo svuotamento, e segue la variabile puntando alla stessa matrice, così il altre possibili variabili o puntatori, Lo stesso indicò, Essi avranno lo stesso valore Questo. Così abbiamo Evitiamo qualsiasi problema con variabili e puntatori Può causare un rimappatura in una nuova matrice come nella primo caso.
Inoltre, Quest'ultima soluzione, è una soluzione migliori per quanto riguarda prestazioni Dal momento che davvero libera la memoria assegnati alla matrice. Se usiamo il prima soluzione, In aggiunta per allocare memoria per la nuova matrice vuota, Noi non rilascia la memoria allocata nella matrice precedente, nel caso che qualsiasi altra variabile o puntatore punta a esso.
