C’è davvero un’alta probabilità che in un certo punto in passato hai digitato sopra la frase nel campo di ricerca di Google o Stack Overflow. Questo problema è così comune che è la domanda più votata sotto il tag javascript sullo Stack. Se è così popolare perché non dare un’occhiata più da vicino a quel problema?
Il problema di rimuovere l’elemento dall’array sembra onnipresente e quindi importante.
In JavaScript ci sono molti metodi nell’Array stesso, ma anche in altri oggetti standard., Tra questi metodi ce ne sono alcuni che possono aiutarci a risolvere il problema specificato. Significa che ci sono in realtà più risposte alla domanda dal titolo. Esaminiamo i più popolari.
Per rendere le soluzioni più comparabili caratterizzeremo ciascuna di esse utilizzando tre proprietà:
- In-place — questo metodo modifica l’array originale? In caso contrario, restituisce l’array modificato (array senza elemento eliminato)
- Rimuove i duplicati-questo metodo rimuove tutte le occorrenze dell’elemento specificato o solo il primo?,
- Per valore / indice-questo metodo richiede di fornire il valore dell’elemento o il suo indice nell’array?
Per semplificare gli esempi assumeremo che tutti gli array contengano valori primitivi come i Numeri.
In questa sezione valuteremo gli approcci più comuni al problema in generale. In generale intendo rimuovere un elemento che non ha un posto speciale nell’array. Non è l’ultimo, il primo o l’unico. È solo Joe normale tra gli elementi di array.
Rimozione elemento per valore utilizzando .,splice ()
Il metodo Splice può essere utilizzato per eliminare un elemento all’indice noto. Se si conosce solo il valore, in primo luogo è necessario identificare l’indice della voce. Quindi utilizzare l’indice come elemento iniziale e rimuovere un solo elemento.
le Proprietà della soluzione:
la Rimozione dell’elemento di Matrice utilizzando .,filter() method
Specific element can be filtered out from array, by providing filtering function. Such function is then called for every element in array.
Properties of the solution:
Removing Array element by extending Array.prototype
Prototype of Array can be extended with additional methods., Tali metodi saranno quindi disponibili per l’uso su array creati.
Nota: l’estensione di prototipi di oggetti dalla libreria standard di JS (come Array) è considerata da alcuni come antipattern.,
le Proprietà della soluzione:
la Rimozione dell’elemento di Matrice utilizzando l’operatore delete
Utilizzando l’operatore delete non influenza la lunghezza della proprietà. Né influisce sugli indici degli elementi successivi. L’elemento eliminato non viene rimosso ma diventa indefinito., The delete operator is designed to remove properties from JavaScript objects, which arrays are objects.
Properties of the solution:
Removing Array element using Object utilities (>= ES10)
ES10 introduced Object.,fromEntries, che può essere utilizzato per creare l’array desiderato da qualsiasi oggetto simile a un array e filtrare gli elementi indesiderati durante il processo.
le Proprietà della soluzione:
casi Particolari
In questa sezione ci occuperemo di valutare tre casi speciali, nei termini di cui in array l’elemento specificato trova: all’inizio, alla fine o in entrambi i casi, cioè, è l’unico elemento dell’array.
Rimozione dell’elemento se si trova alla fine dell’Array..
..,modificando la lunghezza dell’array:
Gli elementi dell’array JavaScript possono essere rimossi dalla fine di un array impostando la proprietà length su un valore inferiore al valore corrente. Qualsiasi elemento il cui indice è maggiore o uguale alla nuova lunghezza verrà rimosso.
le Proprietà della soluzione:
..utilizzando .,metodo pop ():
Il metodo pop rimuove l’ultimo elemento dell’array, restituisce quell’elemento e aggiorna la proprietà length. Il metodo pop modifica l’array su cui viene invocato, Questo significa che a differenza dell’utilizzo di delete l’ultimo elemento viene rimosso completamente e la lunghezza dell’array ridotta.,
le Proprietà della soluzione:
Rimuovere l’elemento se è all’inizio dell’Array
L’ .il metodo shift () funziona molto come il metodo pop tranne che rimuove il primo elemento di un array JavaScript invece dell’ultimo. Quando l’elemento viene rimosso, gli elementi rimanenti vengono spostati verso il basso.,
le Proprietà della soluzione:
Rimuovere l’elemento se è l’unico elemento dell’Array
La tecnica più veloce è quello di impostare una variabile array un array vuoto.,
le Proprietà della soluzione:
in Alternativa, la tecnica da uno dei precedenti esempi possono essere utilizzati da regolare la lunghezza a 0.
Conclusione
JavaScript sta diventando sempre più adatto agli sviluppatori. Nuovi strumenti vengono aggiunti ad ogni rilascio., La conseguenza di ciò è che ci sono molti modi per gestire compiti semplici. Il problema di rimuovere l’elemento dall’array sembra onnipresente e quindi importante. Spero che tu abbia imparato qualcosa di nuovo leggendo questo articolo. Spero anche che ti incoraggi a studiare le cose semplici in JS, come qualcuno wise ha detto una volta:
Pratica te stesso, per l’amor del cielo nelle piccole cose, e poi procedi a una maggiore. – Epittetus
Una nota da JavaScript In inglese semplice: Siamo sempre interessati ad aiutare a promuovere contenuti di qualità., Se si dispone di un articolo che si desidera inviare a JavaScript In inglese chiaro, inviaci una e-mail a [email protected] con il tuo nome utente medio e ti faremo aggiungere come scrittore.