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,368,046 Responses

  1. полноростовой турникет perco https://for-gate.ru .

  2. HeathZex表示:

    Pharmacie Internationale en ligne: pharmacie en ligne – pharmacie en ligne france pas cher

  3. Stephengen表示:

    http://clssansordonnance.icu/# pharmacie en ligne france livraison internationale

  4. Charlesrab表示:

    pharmacie en ligne france fiable Cialis generique achat en ligne п»їpharmacie en ligne france

  5. dream simply表示:

    I’m impressed, I must say. Rarely do I encounter a blog that’s equally
    educative and entertaining, and without a doubt,
    you’ve hit the nail on the head. The issue is an issue that too few people are speaking intelligently about.

    I am very happy I stumbled across this during my hunt for something relating to this.

  6. Charlesrab表示:

    pharmacie en ligne france livraison belgique Cialis prix en pharmacie acheter mГ©dicament en ligne sans ordonnance

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

  8. Stephengen表示:

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

  9. deneme bonusu表示:

    Hi to all, the contents present at this site are
    genuinely awesome for people experience, well, keep up the nice
    work fellows.

  10. JamesBuice表示:

    pharmacies in mexico that ship to usa: mexican pharma – mexican drugstore online
    mexican pharmaceuticals online

  11. HeathZex表示:

    pharmacie en ligne: Cialis sans ordonnance 24h – pharmacie en ligne france pas cher

  12. Shelbytip表示:

    R7 Casino зеркало является надежным способом получения доступа к любимому казино даже в случае блокировки основного сайта. Для обеспечения беспрепятственного доступа к сайту, казино R7 предлагает актуальные зеркала р7 казино зеркало сегодня

  13. HeathZex表示:

    Pharmacie Internationale en ligne: pharmacie en ligne pas cher – pharmacie en ligne france livraison belgique

  14. Stephengen表示:

    http://vgrsansordonnance.com/# Viagra vente libre allemagne

  15. Stephengen表示:

    http://clssansordonnance.icu/# Achat mГ©dicament en ligne fiable

  16. Charlesrab表示:

    SildГ©nafil Teva 100 mg acheter Viagra sans ordonnance 24h Viagra sans ordonnance livraison 48h

  17. Fantastic blog you have here but I was wondering if you knew
    of any forums that cover the same topics discussed in this article?
    I’d really like to be a part of group where I can get feedback from other experienced people that
    share the same interest. If you have any recommendations, please
    let me know. Thanks a lot!

  18. полноростовые турникеты для проходной полноростовые турникеты для проходной .

  19. Stephengen表示:

    http://vgrsansordonnance.com/# Viagra homme sans prescription

  20. HeathZex表示:

    pharmacie en ligne france fiable: pharmacie en ligne – п»їpharmacie en ligne france

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

  22. Charlesrab表示:

    Viagra sans ordonnance livraison 24h Viagra generique en pharmacie Viagra femme sans ordonnance 24h

  23. 10 Facebook Pages That Are The Best Of All Time About Private Psychiatrist Appointment
    psychiatrists private

  24. Don’t Buy Into These “Trends” Concerning Single
    Bed Bunk Bed white bunk bed single

  25. Stephengen表示:

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

  26. Charlesrab表示:

    Achat mГ©dicament en ligne fiable trouver un mГ©dicament en pharmacie pharmacie en ligne pas cher

  27. JamesBuice表示:

    buying prescription drugs in mexico: mexican pharmacy – reputable mexican pharmacies online
    medicine in mexico pharmacies

發佈留言

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