JavaScript Dizi sıralama()
Örnekler
Sıralama dizisi:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
Sıralayın ve ardından sırayı tersine çevirin:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();
Tanım ve Kullanım
Bir sort()
dizinin elemanlarını sıralar.
Orijinal sort()
dizinin üzerine yazar.
sort()
Öğeleri alfabetik ve artan düzende dizeler olarak sıralar .
Ayrıca bakınız:
Sıralama Karşılaştırma İşlevi
Alfabetik sıralama dizeler için iyi sonuç verir ("Elma", "Muz"dan önce gelir).
Ancak sayıları sıralamak yanlış sonuçlar verebilir.
"25", "100"den büyüktür, çünkü "2", "1"den büyüktür.
Bunu bir "karşılaştırma işlevi" sağlayarak düzeltebilirsiniz (Aşağıdaki örneklere bakın).
Sözdizimi
array.sort(compareFunction)
parametreler
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). |
Geri dönüş değeri
Öğelerin sıralandığı dizi. |
Daha fazla örnek
Sayıları artan düzende sıralayın:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
Sayıları azalan düzende sıralayın:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});
En düşük değeri bulun:
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];
En yüksek değeri bulun:
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];
En yüksek değeri bulun:
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];
Tarayıcı Desteği
sort()
bir ECMAScript1 (ES1) özelliğidir.
ES1 (JavaScript 1997) tüm tarayıcılarda tam olarak desteklenir:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |