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,226,342 Responses

  1. Und jede eremitenhaft hat ihren eigenen Reiz – daher solltet
    ihr hier gut eine Woche einplanen, um einen guten ersten Eindruck
    vom Ruhrgebiet zu bekommen. Noch etwas Tipps für einen Urlaub im Ruhrgebiet haben wir in unserem
    Ruhrgebiet-Special für dich – schau es dir gleich an! Daher musste es unbedingt auf meine Liste der
    Urlaubstipps für Deutschland! Für viele der Städte
    haben wir unsere besten Urlaubstipps gesammelt – klicke einfach auf eine Stadt deiner Wahl!
    Noch etwas Tipps für einen Urlaub im Berchtesgadener Land haben wir in unserem Berchtesgadener Land-Special
    für dich – schau es dir gleich an! Apfelstrudel überhaupt in der Kührointhütte am Watzmann essen und
    dabei die… Das Ruhrgebiet ist ein wunderschönes Urlaubsziel in Nordrhein-Westfalen – viele verbinden das Revier oder den Ruhrpott schließlich nur mit Kohleabbau.
    Doch hier hat sich die letzte zeit Jahren viel geändert
    und getan! Zu den Städten im Ruhrgebiet gehören Dortmund, Duisburg, Essen, Oberhausen, Bochum, Bottrop,
    Gelsenkirchen, Herne, Hagen, Hamm und Mühlheim.

  2. vimeo.com表示:

    Hello my loved one! I want to say that this post is awesome, nice written and include almost all vital infos.
    I would like to look extra posts like this .

  3. Thank you for some other informative web site. Where else may just
    I am getting that kind of information written in such a perfect method?
    I’ve a mission that I am simply now working
    on, and I have been at the glance out for such information.

  4. zzb.bz表示:

    Hello it’s me, I am also visiting this web page daily,
    this website is really nice and the visitors are actually sharing pleasant thoughts.

  5. Howdy, I think your web site may be having web
    browser compatibility issues. When I look at your website in Safari, it looks fine but when opening in Internet Explorer,
    it has some overlapping issues. I just wanted to give you a
    quick heads up! Apart from that, wonderful site!

  6. Hi there, I enjoy reading all of your post.
    I wanted to write a little comment to support you.

  7. Vernon表示:

    It’s going to be finish of mine day, but before ending I am reading this wonderful article to increase my know-how.

  8. Attractive section of content. I just stumbled upon your site
    and in accession capital to assert that I acquire actually enjoyed account your
    blog posts. Any way I’ll be subscribing to your augment and even I achievement you access consistently fast.

  9. Your means of explaining the whole thing in this piece of writing is
    actually nice, all can without difficulty understand
    it, Thanks a lot.

  10. Wonderful goods from you, man. I have understand your stuff previous to and you’re just extremely fantastic.
    I actually like what you have acquired here, really like what you are saying and the way in which you say it.

    You make it enjoyable and you still take care of to keep it wise.
    I can’t wait to read much more from you. This is actually a great web site.

  11. Terri表示:

    I love your blog.. very nice colors & theme. Did you
    create this website yourself or did you hire someone to do it for you?
    Plz answer back as I’m looking to create my own blog
    and would like to find out where u got this from.

    thank you

  12. Excellent blog here! Also your website loads up fast!
    What host are you using? Can I get your affiliate link to your host?
    I wish my site loaded up as quickly as yours lol

  13. I do not even know how I ended up here, but I thought this post was great.
    I don’t know who you are but certainly you
    are going to a famous blogger if you are not already 😉 Cheers!

  14. Zusätzlich bestimmt das Kabel die Reichweite – ist es nicht lang genug, muss der Staubsauger an einer anderen Steckdose angeschlossen werden. Beim Akkusauger treten diese Probleme des Saugens nicht auf.
    Er besteht aus einer verstellbaren Saugstange ohne einen sperrigen Korpus und Kabel.
    Treppen stellen jeden Bodensauger vor eine Herausforderung.
    In beiden Fällen bietet der Akku-Staubsauger mit
    leichtem tragbarem Korpus mehr Flexibilität und eine
    einfachere Handhabung. Bei kabelgebundenen Staubsaugern ist der
    Saugschlauch zumeist nicht sehr lang, sodass höher gelegene Stellen nicht oder nur schwer zu erreichen sind.

    Wie gut reinigen Akku-Staubsauger den zu saugenden Bereich?
    Die Saugleistung der Akku-Staubsauger wird von den kabelgebundenen Bodenstaubsaugern übertroffen. Akku-Staubsauger haben nicht nur Vorteile gegenüber
    herkömmlichen Bodenstaubsaugern, sondern bringen auch
    Nachteile mit sich, die hier gegenübergestellt werden. Kabelgebundene Staubsauger können beliebig lang auf beliebig starkem Saug-Modus ausgenutzt werden, während die Laufzeit des Akkusaugers a fortiori bei
    hoher Saugstufe stark begrenzt ist. Viele Akku-Staubsauger halten im
    stärksten Saug-Modus nur wenige Minuten durch. Manche Modelle haben eine Laufzeit von nur 10 Minuten, was meist
    nicht ausreicht, um den gesamten Haushalt zu säubern.

  15. I have learn some just right stuff here. Definitely value bookmarking for revisiting.

    I surprise how much attempt you set to create any such excellent informative website.

  16. discuss表示:

    If you want to improve your know-how just keep visiting this web site and be updated with the latest gossip posted here.

  17. Usually I don’t learn article on blogs, however I wish to say that this
    write-up very pressured me to try and do so! Your writing taste has been amazed me.

    Thank you, quite nice article.

  18. Hi i am kavin, its my first time to commenting anyplace,
    when i read this piece of writing i thought i could also make comment due to this sensible
    paragraph.

  19. It’s remarkable to pay a quick visit this web page and
    reading the views of all colleagues regarding this piece of writing, while I am
    also eager of getting know-how.

  20. hi!,I like your writing so a lot! proportion we communicate more approximately
    your article on AOL? I need a specialist in this area to resolve
    my problem. Maybe that’s you! Having a look ahead to see you.

  21. Hi there just wanted to give you a quick heads up
    and let you know a few of the images aren’t loading correctly.
    I’m not sure why but I think its a linking issue.
    I’ve tried it in two different browsers and both show the same results.

  22. Hey there! Do you know if they make any plugins to protect against hackers?
    I’m kinda paranoid about losing everything I’ve worked hard on. Any
    suggestions?

  23. magnificent points altogether, you simply won a new reader.
    What could you recommend in regards to your publish that you
    simply made some days ago? Any certain?

  24. When someone writes an paragraph he/she keeps the idea of a user
    in his/her brain that how a user can understand it. Therefore that’s why
    this piece of writing is great. Thanks!

  25. Hi to all, how is the whole thing, I think every
    one is getting more from this site, and your views are fastidious in favor of new
    viewers.

  26. I like the helpful information you provide in your articles.

    I’ll bookmark your blog and check again here regularly.
    I am quite sure I’ll learn a lot of new stuff
    right here! Good luck for the next!

  27. I delight in, cause I found just what I used to be looking for.
    You have ended my four day long hunt! God Bless you
    man. Have a great day. Bye

  28. I got this website from my buddy who told me concerning this
    site and at the moment this time I am browsing this web
    page and reading very informative content here.

  29. It’s fantastic that you are getting ideas from this article as
    well as from our dialogue made here.

  30. SEA表示:

    Dadurch, dass SEO Marketing sehr nachhaltig ist und sich gut an die Unternehmensgröße und Strategie anpassen lässt, ist diese Disziplin insbesondere
    für junge Unternehmen interessant, die sich im Markt etablieren möchten. Aber
    auch Unternehmen, die stets auf Neukunden angewiesen sind, sollten SEO Marketing betreiben. SEO Marketing
    ist im Rahmen des Online Marketing eine relevante Größe mehr Umsatz zu erzeugen. SEO Marketing ist für alle Unternehmen hilfreich, deren Kern-Zielgruppe kontrolliert der Customer Journey
    für die Informations- oder Kaufphase Suchmaschinen nutzen. Für
    wen ist SEO Marketing sinnvoll? Somit ist SEO Marketing sicherlich für alle
    E-Commerce Anbieter relevant, da langfristig
    Traffic, der über SEO Marketing zustande kommt, günstiger ist als Traffic,
    der über Suchmaschinenwerbung (SEA) Maßnahmen generiert wird.
    Mithilfe von SEO Marketing und einer spezifischen Fachexpertise können so Interessenten aufmerksam gemacht werden. SEO Marketing ist auch für
    Freiberufler oder Fachspezialisten interessant, die sich positionieren und
    ein Themenfeld sauber besetzen müssen. Auch im B2B Marketing spielt SEO
    eine große Rolle, da auch im Businessumfeld Suchmaschinen intensiv genutzt werden, um sich über Lösungen zu
    informieren, Anbieter zu identifizieren und Anfragen auszulösen.

發佈留言

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