JavaScript-array sort()
Voorbeelden
Sorteer array:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
Sorteer en keer de volgorde om:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();
Definitie en gebruik
Het sort()
sorteert de elementen van een array.
De sort()
overschrijft de oorspronkelijke array.
Het sort()
sorteert de elementen als strings in alfabetische en oplopende volgorde.
Zie ook:
Sorteer Vergelijk Functie
Alfabetisch sorteren werkt goed voor tekenreeksen ("Apple" komt voor "Banaan").
Maar het sorteren van getallen kan onjuiste resultaten opleveren.
"25" is groter dan "100", omdat "2" groter is dan "1".
U kunt dit oplossen door een "vergelijkfunctie" op te geven (zie onderstaande voorbeelden).
Syntaxis
array.sort(compareFunction)
Parameters:
Parameter | Description |
compareFunction |
Optional. A function that defines a sort order. The function should return a negative, zero, or positive value, depending on the arguments:
When sort() compares two values, it sends the values to the compare function, and sorts the values according to the returned (negative, zero, positive) value. Example: The sort function will sort 40 as a value lower than 100. When comparing 40 and 100, sort() calls the function(40,100). The function calculates 40-100, and returns -60 (a negative value). |
Winstwaarde
De array met de items gesorteerd. |
Meer voorbeelden
Sorteer nummers in oplopende volgorde:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
Sorteer getallen in aflopende volgorde:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});
Zoek de laagste waarde:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in ascending order
points.sort(function(a, b){return a-b});
let lowest = points[0];
Zoek de hoogste waarde:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in descending order:
points.sort(function(a, b){return b-a});
let lowest = points[0];
Zoek de hoogste waarde:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in ascending order:
points.sort(function(a, b){return a-b});
let highest = points[points.length-1];
Browserondersteuning
sort()
is een ECMAScript1 (ES1)-functie.
ES1 (JavaScript 1997) wordt volledig ondersteund in alle browsers:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |