Ordinamento di un array in Javascript

Nel linguaggio Javascript per ordinare gli elementi di un array in modo crescente utilizzo il metodo sort()

nomearray.sort()

Per ordinare gli elementi dell'array in modo decrescente, invece, prima ordino l'array in modo crescente con il metodo sort(). Poi capovolgo l'ordinamento con il metodo reverse().

nomearray.sort()
nomearray.reverse()

I metodi sort() e reverse() modificano la posizione degli elementi di un array in memoria.

Nota. Entrambi i metodi sort() e reverse() sono metodi predefiniti degli oggetti array. Quindi, non occorre dichiararli.

    Un esempio pratico

    Dichiaro un array con cinque elementi e lo assegno alla variabile myVar.

    var myVar = new Array(50,30,10,40,20);

    Per eseguire l'ordinamento degli elementi digito myVar.sort()

    myVar.sort();

    Il metodo sort() ordina gli elementi in modo crescente, dal più piccolo al più grande.

    • for (i=0; i<myVar.length; i++) {
    • document.writeln(myVar[i]);
    • }

    Il risultato in output è

    10 20 30 40 50

    Attenzione. L'ordinamento degli elementi sovrascrive la posizione originale degli elementi nell'array in memoria. Ad esempio, se digito

    prova=myVar.sort()

    La posizione degli elementi dell'array cambia sia nella variabile prova che nella variabile iniziale myVar. Poiché entrambe le variabili non contengono l'oggetto array ma lo stesso riferimento all'indirizzo di memoria in cui si trova l'array.

    Esempio 2

    Riprendo l'array dell'esempio precedente.

    var myVar = new Array(50,30,10,40,20);

    Per fare l'ordinamento decrescente, prima ordino l'array in modo crescente con il metodo sort()

    myVar.sort();

    Poi ribalto l'ordine degli elementi dell'array tramite il metodo reverse()

    myVar.reverse();

    In questo modo ottengo l'ordinamento decrescente degli elementi dell'array, dal più grande al più piccolo.

    • for (i=0; i<myVar.length; i++) {
    • document.writeln(myVar[i]);
    • }

    Il risultato finale in output è il seguente

    50 40 30 20 10

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Gli array in Javascript

    I metodi degli array