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,524,120 Responses

  1. WillieRap表示:

    drug mart: canadian pharmacy coupon code – discount drug mart

  2. WillieRap表示:

    easy canadian pharm: easy canadian pharm – easy canadian pharm

  3. Porterfax表示:

    pharmacy website india MegaIndiaPharm MegaIndiaPharm

  4. Davidnof表示:

    deep web sites https://github.com/darkwebwebsites/darkwebwebsites – dark market link tor market

  5. MichaelIncap表示:

    darkmarket 2025 https://github.com/darknetmarketslinks/darknetmarketlinks – darknet market links darknet sites

  6. 1. зарегистрироваться – указать номер телефона и разработать https://https://t.me/s/luchshie_bukmekery пароль.

  7. Dexterfueme表示:

    Запойное пьянство представляет серьезную угрозу для здоровья, провоцируя развитие таких заболеваний, как цирроз печени, панкреатит, сердечно-сосудистые нарушения, а также психические расстройства. В запущенных случаях возможны тяжелые последствия, включая алкогольный делирий (белую горячку), который требует экстренной медицинской помощи. Чтобы избежать подобных рисков, необходимо своевременно обратиться к специалистам, которые помогут стабилизировать состояние и провести грамотное лечение.
    Получить больше информации – vyvod iz zapoya na domu nedorogo kapelnica v-tveri

  8. MichaelIncap表示:

    dark market 2025 https://github.com/darknetmarketslinks/darknetmarketlinks – darknet markets 2025 tor dark web

  9. Davidmoits表示:

    easy canadian pharm: easy canadian pharm – easy canadian pharm

  10. Charleskepsy表示:

    canadian pharmacy no prescription https://discountdrugmart.pro/# drugmart

  11. Lucy Gray表示:

    Your blog does a superb job highlighting the necessity of First Aid Training Brisbane– such essential life skills to possess! CPR courses Near Me

  12. AngelCroft表示:

    http://uralcadet.ru/ – Узнайте, как преобразить ваш бизнес с помощью профессиональной фотосъемки.

  13. WillieRap表示:

    escrow pharmacy canada: easy canadian pharm – cheap canadian pharmacy

  14. Solar Cell表示:

    Good post. I learn something totally new and challenging on blogs I stumbleupon on a
    daily basis. It’s always exciting to read content from other authors and use a
    little something from their websites.

  15. www.google.pn表示:

    Five Killer Quora Answers On Best Single Pushchair best Single pushchair (http://www.google.pn)

  16. Rodneytus表示:

    darkmarket url https://github.com/darkwebmarketslinks/darkwebmarkets – tor markets links dark web market links

  17. MarkWat表示:

    Всем привет! Может кто знает, где найтиполезные блоги о займах? Сейчас читаю – buh-biznes29.ru

  18. Porterfax表示:

    online pharmacy delivery usa canada pharmacy not requiring prescription online pharmacy no prescription

  19. Meilleurs produits de parapharmacie discount.La destination de choix pour tous. Pharmacie de la Maourine, Pharmacie Toulouse Borderouge. Commander viagra en ligne, pharmacie canada viagra, Aebys. Viagra 50 mg, viagra gratuit pharmacie, Nbenergy Magasin en. Parapharmacie en ligne, Vente en ligne gamme produits minceur parapharmacie. en ligne, Votre Parapharmacie en ligne, Conseils de professionnels.Paiement. Commander levitra, levitra achat, Ecodes Drugstore en ligne, Les. https://eurogeneriqueetfrance.com/sortis/ Generique Sortis Pilule

  20. Charleskepsy表示:

    prescription free canadian pharmacy https://discountdrugmart.pro/# discount drugs

  21. I value your understandings on interior air top quality! It’s something a number of us forget. For further reading, go to Electric heating repair for additional information

  22. Porterfax表示:

    drugmart discount drug mart discount drug mart pharmacy

  23. Attractive component of content. I just stumbled upon your weblog and
    in accession capital to assert that I acquire actually enjoyed account your blog posts.

    Anyway I’ll be subscribing to your augment or even I success
    you get admission to consistently quickly.

  24. wild bandito表示:

    I don’t know whether it’s just me or if perhaps
    everybody else encountering issues with your blog.
    It seems like some of the written text in your posts are running off the screen.
    Can someone else please comment and let me know if this is happening to them as
    well? This may be a issue with my web browser because I’ve had this happen before.
    Thanks

  25. Rodneytus表示:

    dark web search engines https://github.com/darkwebmarketslinks/darkwebmarkets – tor marketplace drug markets dark web

  26. MichaelGeony表示:

    canadian prescription pharmacy https://familypharmacy.company/# online pharmacy delivery usa

  27. Sonia表示:

    Why Where Do You Renew Your Driver’s License Is Still Relevant In 2024 trafikverket förarprov borås,
    Sonia,

  28. MichaelGeony表示:

    drugstore com online pharmacy prescription drugs http://xxlmexicanpharm.com/# mexican drugstore online

發佈留言

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