JavaScript ile Dizi İşlemleri konusundan dizilerde sıralama yapılırken Sort metodunun kullanıldığından bahsetmiştik yalnız bu yöntemle sıralama işlemini sayılar üzerinde yaptığımızda yanlış sonuçlar elde edebiliyoruz. Örnek
<script type="text/javascript"> var sayilar = [0, 1, 5, 10, 15]; sayilar.sort(); document.writeln(values); </script>
Ekran çıktısı ” 0,1,10,15,5 “ şeklinde olacaktır sıralama gördüğünüz gibi yanlış bunun sebebi sıralamanın string olarak yapılması peki çözümü nedir bunun diyorsanız hemen kodlarımız aşağıda;
Javascript dizi içindeki sayıları küçükten büyüğe sıralama
function kontrol(sayi1, sayi2) { if (sayi1 < sayi2) { return -1; } else if (sayi1 > sayi2) { return 1; } else { return 0; } } var sayilar = [0, 120, 5, 10, 15]; sayilar.sort(kontrol); document.writeln(sayilar); //0,5,10,15,120
Javascript dizi içindeki sayıları büyükten küçüğe sıralama
function kontrol(sayi1, sayi2) { if (sayi1 < sayi2) { return 1; } else if (sayi1 > sayi2) { return -1; } else { return 0; } } var sayilar = [0, 120, 5, 10, 15]; sayilar.sort(kontrol); document.writeln(sayilar);//120,15,10,5,0