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,684,238 Responses

  1. ThomasThype表示:

    Mesin slot digital semakin banyak diminati: slot 88 – slot88.company

  2. ChesterBuh表示:

    Всем привет! Подскажите, где найти полезные блоги о недвижимости? Пока нашел – https://territoria-we-stars.ru/strahovanie-pri-arende-pomeshhenij-zashhitite-svoi-interesy-v-sluchae-nepredvidennyh-situacij/

  3. Aaronbus表示:

    bonaslot.site bonaslot.site Banyak kasino memiliki program loyalitas untuk pemain

  4. Hi there to all, how is everything, I think every one is
    getting more from this site, and your views are pleasant in support of
    new visitors.

  5. JamesLok表示:

    Banyak kasino memiliki promosi untuk slot http://preman69.tech/# Banyak kasino memiliki program loyalitas untuk pemain

  6. ChesterBuh表示:

    Привет. Может кто знает, где найти полезные блоги о недвижимости? Сейчас читаю – https://nsp38.ru/prostye-sposoby-privyazki-doma-k-uchastku/

  7. Have you ever considered creating an ebook or guest authoring on other sites?
    I have a blog based upon on the same topics you discuss and would really like to
    have you share some stories/information. I know my viewers would appreciate your work.
    If you’re even remotely interested, feel free to send me an e-mail.

  8. ThomasThype表示:

    Bermain slot bisa menjadi pengalaman sosial: bonaslot – BonaSlot

  9. Hurrah! At last I got a blog from where I be able to truly obtain useful information regarding my study
    and knowledge.

  10. Aaronbus表示:

    garuda888 garuda888 slot Jackpot progresif menarik banyak pemain

  11. Fantastic site you have here but I was wondering if you knew of any community forums that cover the same topics talked
    about here? I’d really love to be a part of online community
    where I can get feed-back from other knowledgeable individuals that share the same interest.
    If you have any recommendations, please let me know.
    Many thanks!

  12. fantastic issues altogether, you simply gained a new reader.

    What would you recommend in regards to your put up that
    you made a few days ago? Any positive?

    Here is my web-site: Online Gambling in Vietnam

  13. Williecrady表示:

    Permainan slot bisa dimainkan dengan berbagai taruhan http://garuda888.top/# Mesin slot baru selalu menarik minat

  14. JamesLok表示:

    Banyak pemain mencari mesin dengan RTP tinggi http://slotdemo.auction/# Kasino mendukung permainan bertanggung jawab

  15. Aaronbus表示:

    preman69.tech preman69 slot Mesin slot dapat dimainkan dalam berbagai bahasa

  16. Aaronbus表示:

    slot demo slotdemo Slot menjadi daya tarik utama di kasino

  17. DavidCooth表示:

    https://preman69.tech/# Pemain sering berbagi tips untuk menang

  18. Hello there! This post could not be written much better!
    Looking through this post reminds me of my previous roommate!
    He constantly kept preaching about this.

    I will forward this post to him. Pretty sure he’s going to have a very
    good read. I appreciate you for sharing!

  19. Diplomi_tzEi表示:

    корочки для аттестата купить за 9 класс prema-diploms.ru .

  20. JamesLok表示:

    Slot dengan bonus putaran gratis sangat populer http://slot88.company/# Mesin slot menawarkan pengalaman bermain yang cepat

  21. Android - 0wr表示:

    Скачивание модификаций на Андроид становится всё более популярным среди пользователей, которые хотят улучшить свои игровые возможности, интегрируя дополнительные функции, получая доступ к платные функции или делая легче игру. Для многих пользователей моды с читами являются отличным инструментом получить больше радости от игр, будь то при помощи взломов, упрощающих геймплей, или разблокирующих возможности, которые обычно были бы неактивны без оплаты.

    Переходите по ссылке для информации: http://.s.a.l.s.cv.h@megafax.net/phpinfo.php?a%5B%5D=%3Ca+href%3Dhttps://android-boost.ru/%3E%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%BC%D0%BE%D0%B4%D1%8B+%D0%B4%D0%BB%D1%8F+%D0%BF%D0%BE%D0%BF%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D1%85+%D0%B8%D0%B3%D1%80%3C/a%3E%3Cmeta+http-equiv%3Drefresh+content%3D0;url%3Dhttps://android-boost.ru/+/%3E

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

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

    Такие дополнения зачастую внедряют читы на неограниченные жизни, неограниченные ресурсы или доступ к эксклюзивным предметам, которые обеспечивают пользователям прогрессировать по миссиям, не используя большие ресурсы или игровых покупок.

  22. Williecrady表示:

    Banyak pemain menikmati bermain slot secara online https://preman69.tech/# Banyak kasino memiliki promosi untuk slot

  23. Hello i am kavin, its my first occasion to commenting anyplace, when i read this piece of writing i thought i could also
    create comment due to this sensible paragraph.

  24. Dannyfut表示:

    darkmarket link dark markets 2025 onion dark website

  25. MichaelCog表示:

    посмотреть в этом разделе https://nn.benevobis.su/services/pollinoz/

  26. ThomasThype表示:

    Slot menawarkan berbagai jenis permainan bonus: demo slot pg – slot demo

  27. JamesLok表示:

    Keseruan bermain slot selalu menggoda para pemain https://garuda888.top/# Kasino memiliki suasana yang energik dan menyenangkan

  28. Tuxezh表示:

    buy augmentin 375mg – order augmentin 625mg sale cymbalta medication

  29. This post is genuinely a nice one it helps new web visitors, who are wishing for
    blogging.

發佈回覆給「dewaslot link alternatif」的留言 取消回覆

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