Merhaba arkadaşlar,
Proje geliştirirken ufak ufak kodlar lazım oluyor, ya ben bunu hangi projede kullandım falan filan derken dedim ki “aaa benim mükemmel bir bloğum var, neden bloğuma koymuyorum” 🙂
Konuya gelecek olursak, bir dizi içindeki tekrar eden birden çok tekrar eden ifadenin sayısnı öğrenip sıralamak için ufak birşeyler yazdım.
İçerisindeki tekrar eden ifadelerin sayısını almak ve sıralamak için kullanacağımız dizi:
1 |
var fruits = ["Karpuz","Armut","Ekşi elma","Limon","Armut","Çilek","Çilek","Karpuz","Kiraz","Greyfurt","Beyaz üzüm","Muz","Greyfurt","Karpuz","Muz","Portakal","Nar","Karpuz","Armut","Kara üzüm","Greyfurt","Çilek","Greyfurt","Beyaz üzüm","Muz","Muz","Greyfurt","Muz","Greyfurt","Çilek","Muz","Armut","Nar","Çilek","Armut","Karpuz","Çilek","Elma","Portakal","Nar","Nar","Karpuz","Greyfurt","Karpuz","Greyfurt","Çilek","Beyaz üzüm","Karpuz","Nar","Ekşi elma","Ekşi elma","Nar","Ekşi elma","Ekşi elma","Ekşi elma","Muz","Karpuz","Limon","Nar","Armut","Ekşi elma","Greyfurt","Beyaz üzüm","Armut","Kara üzüm","Muz","Ekşi elma","Portakal","Muz","Karpuz","Muz","Beyaz üzüm","Karpuz","Kara üzüm","Kiraz","Çilek","Elma","Beyaz üzüm","Beyaz üzüm","Beyaz üzüm","Armut","Elma","Portakal","Kara üzüm","Kiraz","Limon","Kiraz","Nar","Ekşi elma","Karpuz","Çilek","Çilek","Ekşi elma","Kiraz","Elma","Greyfurt","Çilek","Kara üzüm","Armut","Karpuz"]; |
yazdığımız fonksiyonumuz
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
function listArray(arr,order){ // dizideki tekrar eden elemanları sayı adedine toplayıp yeni obj olusturuyoruz var itemCount = []; arr.forEach(function (x) { itemCount[x] = (itemCount[x] || 0) + 1; }); // olusturdugumuz objeyi ters siralamak icin diziye donusturuyoruz. var countsSortable = []; for (var i in itemCount) { countsSortable.push([ itemCount[i],i]) } countsSortable.sort(function (a, b) { if(order === 'desc') { return b[0] - a[0]; } else { return a[0] - b[0]; } }); return countsSortable; } |
Örnek :
See the Pen Dizi içindeki String elemanları sayı adedine göre sıralama by Aycan BÜLBÜL (@AycanB) on CodePen.