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
