JavaScript Array sort()

Definitie en gebruik

sort() De methode sorteert de items in de array.

De volgorde van sorteren kan alfabetisch of numeriek zijn, evenals oplopend (omhoog) of aflopend (omlaag).

Standaardsort() De methode sorteert de waarden als strings, op alfabet en in oplopende volgorde.

Dit is van toepassing op strings ("Apple" verschijnt voor "Banana"). Maar als cijfers als strings worden gesorteerd, is "25" groter dan "100", omdat "2" groter is dan "1".

Daaromsort() De methode geeft onjuiste resultaten bij het sorteren van cijfers.

Je kunt dit probleem oplossen door een 'vergelijkingsfunctie' te leveren (zie onderstaande 'Parameterwaarden').

Opmerking:sort() De methode wijzigt de oorspronkelijke array.

Voorbeeld

Voorbeeld 1

Sorteer de array:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();

Probeer het zelf

Voorbeeld 2

Sorteer de cijfers in de array in oplopende volgorde:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});

Probeer het zelf

Voorbeeld 3

Sorteer de cijfers in de array in aflopende volgorde:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});

Probeer het zelf

Voorbeeld 4

Haal het laagste getal uit de array:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});    // Sorteer de cijfers in de array oplopend
// Het eerste item (points[0]) van de array is nu de laagste waarde

Probeer het zelf

Voorbeeld 5

Haal het hoogste getal uit de array:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});    // Sorteer de cijfers in de array aflopend
// Het eerste item (points[0]) van de array is nu de hoogste waarde

Probeer het zelf

Voorbeeld 6

Haal het hoogste getal uit de array:

const points = [40, 100, 1, 5, 25, 10];
// Sorteer de cijfers oplopend:
points.sort(function(a, b){return a-b});
// points[points.length-1] = 100(hoogste waarde)

Probeer het zelf

Voorbeeld 7

Sorteer de array in alfabetische volgorde en keer de volgorde van de gesorteerde items om (aflopend):

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();

Probeer het zelf

Syntax

array.sort(compareFunction)

Parameterswaarden

Parameters Beschrijving
compareFunction

Optioneel. Definieer een functie die een alternatieve sorteervolgorde definieert. Deze functie moet een negatieve, nul of positieve waarde retourneren, afhankelijk van de parameters, bijvoorbeeld:

  • function(a, b){return a-b}

Bij het vergelijken van twee waarden, stuurt de sort() methode de waarden naar de vergelijkingsfunctie en sorteert de waarden op basis van de geretourneerde (negatieve, nul, positieve) waarde.

Voorbeeld:

Bij het vergelijken van 40 en 100, roept de sort() methode de vergelijkingsfunctie aan (40, 100).

Deze functie berekent 40-100 en retourneert -60 (negatief).

De sort() functie sorteert 40 als een waarde kleiner dan 100.

Technische details

Retourwaarde: Array object, waarvan de items gesorteerd zijn.
JavaScript versie: ECMAScript 1

Browserondersteuning

Ondersteund door alle browsers sort() Methode:

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Ondersteuning Ondersteuning Ondersteuning Ondersteuning Ondersteuning Ondersteuning

Gerelateerde pagina's

Tutorial:JavaScript Array

Tutorial:JavaScript array Const

Tutorial:JavaScript array methods

Tutorial:JavaScript sort array

Tutorial:JavaScript array iteration

Manual:JavaScript Array.reverse() method