JS 依照元素出現數量排序

同樣是最近遇到的狀況,需要利用陣列內元素出現的數量進行排序,以下為範例程式:

var array = ["1", "2", "4", "5", "2", "4", "2", "3"];
var str = array.toString();
var filter = [];
var result = [];
document.write("原始陣列:" + array + "<br>");

var get = function (str, tar, arr, tmp) {
    if (str.indexOf(tar) >= 0) {
        tmp = str.slice(str.indexOf(tar) + 1);
        arr.push(tar);
        get(tmp, tar, arr, tmp);
    }
    return arr;
}

for (i in array) {
    var elm = [];
    var tmp;
    var fstr = filter.join();
    if (fstr.indexOf(array[i]) >= 0) {
        continue;
    } else {
        var tmp_arr = get(str, array[i], elm, tmp);
        result.push(tmp_arr.length + ':' + tmp_arr[0]);
        filter.push(array[i]);
    }
}

result.sort();
result.reverse();

//按照出現次數排序,不刪除重複元素
var finishArray = [];

for (index in result) {
    var show = result[index].split(':');
    for (i = 0; i < show[0]; i++) {
        finishArray.push(show[1]);
    }
}
document.write("按出現次數排序,不刪除重複元素:" + finishArray + "<br>");

//按照出現次數排序,刪除重複元素
var finishArray = [];
for (index in result) {
    var show = result[index].split(':');
    finishArray.push(show[1]);
}
document.write("按出現次數排序,刪除重複元素:" + finishArray + "<br>");

輸出結果:

原始陣列:1,2,4,5,2,4,2,3
按出現次數排序,不刪除重複元素:2,2,2,4,4,5,3,1
按出現次數排序,刪除重複元素:2,4,5,3,1

You may also like...

1,366,967 Responses

  1. What’s up colleagues, its great piece of writing about teachingand
    entirely defined, keep it up all the time.

    Here is my webpage :: is genius wave legit

  2. What i do not realize is in reality how you are no longer really much more
    neatly-appreciated than you might be right now. You’re very intelligent.
    You realize therefore significantly in terms of this
    matter, produced me in my view imagine it from numerous varied angles.
    Its like women and men are not fascinated unless it is one thing to accomplish with Girl gaga!

    Your own stuffs excellent. All the time handle it up!

  3. Patricksceks表示:

    Gas-Dank Delivery is dedicated to providing marijuana to meet any budget and preference https://www.proequest.com/ad-redirect?url=https://www.greenleafexpress.org/&id=13

  4. Stephengen表示:

    http://clssansordonnance.icu/# acheter mГ©dicament en ligne sans ordonnance

  5. JamesBuice表示:

    medication from mexico pharmacy: mexican pharmaceuticals online – medication from mexico pharmacy
    mexican border pharmacies shipping to usa

  6. Stephengen表示:

    https://vgrsansordonnance.com/# Viagra sans ordonnance 24h suisse

  7. I’ve been surfing online more than three hours today, yet I never found any interesting article like yours. It’s pretty worth enough for me. In my opinion, if all webmasters and bloggers made good content as you did, the web will be a lot more useful than ever before. 오피사이트

  8. При возникновении проблем
    с доступом используют дублирующее зеркало — оно предоставляет доступ
    без ограничений к слотам.

  9. Stephengen表示:

    https://vgrsansordonnance.com/# Acheter viagra en ligne livraison 24h

  10. Guide To Togel Sydney: The Intermediate Guide For Togel Sydney Togel
    sydney (www3.molifan.Net)

  11. John Palmer表示:

    Имбирь — это удивительный корень, который обладает множеством полезных свойств. Он помогает укрепить иммунитет, улучшить пищеварение и справиться с простудными заболеваниями. Имбирь активно используется в кулинарии и медицине благодаря своим противовоспалительным и антибактериальным свойствам. Регулярное употребление имбиря способствует улучшению общего самочувствия и повышению жизненного тонуса.

  12. Veronica Diaz表示:

    Имбирь — это удивительный корень, который обладает множеством полезных свойств. Он помогает укрепить иммунитет, улучшить пищеварение и справиться с простудными заболеваниями. Имбирь активно используется в кулинарии и медицине благодаря своим противовоспалительным и антибактериальным свойствам. Регулярное употребление имбиря способствует улучшению общего самочувствия и повышению жизненного тонуса.

  13. Hola! I’ve been following your blog for a while now and finally got the bravery to go ahead and give you a shout out from Kingwood Tx!
    Just wanted to say keep up the fantastic job!

  14. HeathZex表示:

    Pharmacie en ligne livraison Europe: Cialis generique achat en ligne – п»їpharmacie en ligne france

  15. JamesBuice表示:

    medication from mexico pharmacy: medication from mexico – medicine in mexico pharmacies
    mexican rx online

  16. JamesBuice表示:

    buying prescription drugs in mexico online: mexican rx online – buying from online mexican pharmacy
    purple pharmacy mexico price list

  17. Nine Things That Your Parent Taught You About Double Glazed Windows Handles double glazed windows handles

  18. Велосипеды velosiped-magazin.ru

    Если Вы планировали найти купить взрослый велосипед в москве в Москве, то звоните уже сейчас. Телефон +7(495)128-48-26 для связи и предоставлению консультации. Наши консультанты помогут с выбором и оформят Вам заказ с доставкой по Москве.

  19. Stephengen表示:

    http://clssansordonnance.icu/# acheter mГ©dicament en ligne sans ordonnance

  20. 7 Small Changes That Will Make The Difference With Your Toto
    Korea 스포츠토토 (Maps.Google.Mw)

  21. JamesBuice表示:

    medication from mexico pharmacy: mexican pharmaceuticals online – buying from online mexican pharmacy
    mexican mail order pharmacies

  22. Stephengen表示:

    http://pharmaciepascher.pro/# pharmacie en ligne livraison europe

  23. Carol表示:

    Guide To Kids Double Bunk Bed: The Intermediate Guide To
    Kids Double Bunk Bed kids double bunk bed (Carol)

  24. HeathZex表示:

    Pharmacie sans ordonnance: Cialis generique prix – Pharmacie Internationale en ligne

  25. Could Is Treadmill Incline Good Be The Key To 2023’s Resolving?
    treadmill with incline for small spaces (doherty-covington.blogbright.net)

  26. Доставка из Китая с таможенными
    услугами – это профессиональное решение
    для импорта товаров из Китая, включающее
    в себя организацию перевозки,
    таможенное оформление и сопутствующие услуги.
    Мы предоставляем полный спектр услуг, связанных доставка товаров китай включая организацию международных перевозок, таможенное оформление, сертификацию и страхование грузов.
    Наши специалисты помогут вам выбрать оптимальный маршрут и вид транспорта, оформить необходимые документы и декларации, а также проконсультируют
    по вопросам налогообложения и
    таможенного законодательства.

  27. JamesBuice表示:

    best online pharmacies in mexico: medication from mexico – medicine in mexico pharmacies
    mexico drug stores pharmacies

  28. HeathZex表示:

    Viagra gГ©nГ©rique pas cher livraison rapide: viagra en ligne – Viagra sans ordonnance 24h suisse

  29. Профессиональный сервисный центр по ремонту плоттеров в Москве.
    Мы предлагаем: ремонт широкоформатных плоттеров
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  30. Charlesrab表示:

    Pharmacie Internationale en ligne Cialis generique prix Pharmacie Internationale en ligne

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。