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,144 Responses

  1. WillieRap表示:

    discount drug pharmacy: discount drug mart – discount drug pharmacy

  2. MarkWat表示:

    Привет. Подскажите, где найтиразные блоги о кредитах? Сейчас читаю – https://avtolombard-odin24.ru

  3. Analytical Dictionary of Retailing, Google Books Result. La valeur de viagra, viagra en ligne pharmacie, Aepde Magasin de. Cialis en ligne, tadalafil 40mg generique, Revistaesposible. Le prix de cialis, cialis generique pharmacie, Megamek Pharmacie. Gratuit, prix du, pharmacie en ligne, sildenafil, obtenez canadien, vardenafil. Dapoxetine buy online en ligne a bon compte.Sans ordonnance dapoxetine. Solde de viagra, viagra cialis en ligne, Charita Pharmacie en ligne. Viagra en ligne, viagra gratuit pharmacie, Shutupandtakemymoney. Achat en ligne sans ordonnance ou cialis qual melhor acheter paris, suisse. Le prix de viagra, prix pilule viagra, Mageesci Magasin en ligne de. https://eurogeneriqueetfrance.com/misoprostol/ Acheter Misoprostol Alternative

  4. WillieRap表示:

    online pharmacy no prescription: drug mart – discount drugs

  5. 1win_spOa表示:

    ставки кыргызстан http://www.fabc.com.kg .

  6. mostbet_hepa表示:

    мостбет онлайн http://www.gtrtt.com.kg/ .

  7. Dannyfut表示:

    how to access dark web https://github.com/darknetmarketslinks/darknetmarketlinks – tor market url dark web search engine

  8. you’re actually a excellent webmaster. The site loading pace is incredible.

    It sort of feels that you are doing any distinctive trick.
    In addition, The contents are masterwork. you have done a excellent process on this
    topic!

  9. Davidmoits表示:

    Best online pharmacy: online pharmacy delivery usa – canadian pharmacy coupon code

  10. MichaelGeony表示:

    online pharmacy no prescription needed https://xxlmexicanpharm.com/# mexico pharmacies prescription drugs

  11. Heya i am for the first time here. I came across this
    board and I find It truly useful & it helped me out much.
    I hope to give something back and help others like you aided me.

  12. Michaelkig表示:

    dark markets https://github.com/darknetmarkets2025/darknetmarketlinks – darkmarket link deep web links

  13. Davidmoits表示:

    easy canadian pharm: canadian family pharmacy – easy canadian pharm

  14. Michaelkig表示:

    darkmarket 2025 https://github.com/darknetmarkets2025/darknetmarketlinks – dark markets deep web drug store

  15. Hey I know this is off topic but I was wondering if you knew of any widgets I could add to
    my blog that automatically tweet my newest twitter updates.
    I’ve been looking for a plug-in like this for quite some time and was hoping maybe you would have some experience with something like this.
    Please let me know if you run into anything. I truly enjoy reading your blog
    and I look forward to your new updates.

  16. Davidnof表示:

    darkmarket 2025 https://github.com/darkwebwebsites/darkwebwebsites – darknet marketplace dark market link

  17. MichaelGeony表示:

    rx pharmacy no prescription http://familypharmacy.company/# cheapest pharmacy for prescription drugs

  18. mostbet_dupa表示:

    mostbet com официальный сайт скачать http://gtrtt.com.kg .

  19. Davidnof表示:

    dark websites https://github.com/darkwebwebsites/darkwebwebsites – deep web drug store dark web link

  20. Charleskepsy表示:

    non prescription medicine pharmacy http://xxlmexicanpharm.com/# mexican border pharmacies shipping to usa

  21. Лучшие электрокарнизы для профессиональной сцены, которые удивят зрителей.
    Электрокарнизы – стильное решение для сцены, обеспечивая плавное движение драпировок.
    Современные технологии в электрокарнизах, которые делают шоу невероятно красивым.
    Лучшие электрокарнизы для профессиональных выступлений, с идеальным сочетанием функциональности и эстетики.
    Электрокарнизы – современное решение для профессиональных выступлений, которые не оставят равнодушными даже самых взыскательных критиков.
    Сверхсовременные технологии в каждом дизайне, и принести вашему проекту новый уровень.
    Электрокарнизы – лучший выбор для сцены, с легкой и тихой работой в каждом представлении.
    С электрокарнизами ваша сцена станет настоящим шедевром, и подчеркнуть важность каждой сцены.
    Электрокарнизы – современное решение для сцены, воплощая самые смелые идеи в жизнь.
    Сотни вариантов электрокарнизов для ваших выступлений, обеспечив себе идеальный результат в каждом выступлении.
    карниз для сцены с сенсорным управлением https://elektrokarniz8.ru/ .

  22. lineyka.Org表示:

    A Journey Back In Time How People Discussed Patio Door Repair Company 20
    Years Ago Patio door Repair company near me – lineyka.Org,

  23. Porterfax表示:

    Best online pharmacy pharmacy no prescription required Best online pharmacy

  24. A Retrospective A Conversation With People About Assessment Of A Psychiatric Patient 20
    Years Ago Psychiatry-uk adhd self assessment

發佈留言

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