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,525,735 Responses

  1. It’s a pity you don’t have a donate button! I’d without a
    doubt donate to this outstanding blog! I suppose
    for now i’ll settle for bookmarking and adding your RSS feed to my Google account.
    I look forward to brand new updates and will share this website with my Facebook group.

    Talk soon!

  2. 1 vin_xqSi表示:

    1win ставки официальный сайт bbcc.com.kg .

  3. порно мультфильмы порно мультфильмы .

  4. Reswatex App表示:

    Thanks for another informative web site. The place else may just I am getting that type of information written in such a perfect manner?
    I’ve a mission that I’m simply now operating on, and I’ve been at the look out for such information.

  5. Dollyfut表示:

    deep web drug links https://github.com/tormarkets2025ukaz1/tormarkets2025 – dark web market links

  6. Charleskepsy表示:

    cheapest pharmacy to fill prescriptions without insurance https://easycanadianpharm.com/# ordering drugs from canada

  7. Charleskepsy表示:

    canada pharmacy coupon https://xxlmexicanpharm.com/# xxl mexican pharm

  8. WillieRap表示:

    discount drug mart pharmacy: discount drugs – discount drug mart pharmacy

  9. Rodneytus表示:

    dark web sites https://github.com/darkwebmarketslinks/darkwebmarkets – tor markets dark web search engine

  10. Yesterday, while I was at work, my cousin stole my iPad and tested to see if it can survive a
    forty foot drop, just so she can be a youtube sensation. My iPad
    is now destroyed and she has 83 views. I know this is completely off topic but I had to share it with someone!

  11. MichaelGeony表示:

    rx pharmacy no prescription https://discountdrugmart.pro/# drug mart

  12. Holly表示:

    9 Lessons Your Parents Taught You About Parrots African Grey For Sale parrots african grey
    for sale (Holly)

  13. Ищете самые выгодные азартные игры промокоды? Устали терять минуты на тщетные поиски рабочих бонусов?

    В этом случае вам обязательно нужно подписаться на мой Telegram-канал: Топ Казино Бонусы. Тут ты обнаружите ежедневные новости о наиболее прибыльных спецпредложениях от лучших казино онлайн.

    Мы тщательно выбираем лишь надежные игровые платформы с положительной славой и выгодными требованиями для игроков. Забудьте о долгих изысканиях – вся необходимая данные сконцентрирована в уникальном месте.

    Наш Telegram-канал – это есть ваш безотказный помощник в мире азартных игр онлайн. Берите уникальные бонус коды, увеличивайте свои возможности на выигрыш и наслаждайтесь процессом с нами с нами. Вступайте прямо сейчас и не упустите свой счастливый шанс!

  14. 1win_xdOa表示:

    1win вход в личный кабинет http://fabc.com.kg .

  15. MarkWat表示:

    Всем привет! Подскажите, где почитатьполезные блоги о займах? Пока нашел – al-biz.ru

  16. Charleskepsy表示:

    rxpharmacycoupons https://easycanadianpharm.com/# reddit canadian pharmacy

  17. Oh my goodness! Impressive article dude! Thank you so much, However I am having issues with your RSS.
    I don’t know why I am unable to subscribe to it. Is there anybody else having identical
    RSS problems? Anybody who knows the answer can you
    kindly respond? Thanx!!

  18. Porterfax表示:

    easy canadian pharm canada drug pharmacy easy canadian pharm

  19. It’s remarkable to go to see this web page and reading the views of all
    colleagues regarding this article, while I am also eager of getting
    experience.

  20. MichaelGeony表示:

    canadian pharmacy discount coupon http://xxlmexicanpharm.com/# best online pharmacies in mexico

  21. Porterfax表示:

    mexican pharmaceuticals online xxl mexican pharm mexican border pharmacies shipping to usa

  22. Charleskepsy表示:

    legal online pharmacy coupon code https://xxlmexicanpharm.shop/# xxl mexican pharm

  23. A knowledgeable mind brain injury attorney new york legal representative might be able to help.

  24. 1win_lkOa表示:

    1вин онлайн http://fabc.com.kg .

  25. MichaelGeony表示:

    canada pharmacy not requiring prescription https://easycanadianpharm.com/# easy canadian pharm

發佈留言

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