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,229,026 Responses

  1. Joann表示:

    May I simply just say what a comfort to find somebody
    that actually knows what they’re discussing on the web.
    You actually know how to bring a problem to light
    and make it important. A lot more people really need to look
    at this and understand this side of your story. I was surprised you’re not more popular since you definitely possess the gift.

  2. Der große Vorteil ist das verhältnismäßig geringe Eigengewicht.
    Schienenrampen bestehen oft aus Aluminium. Die Oberfläche ist rutschfest, da sie häufig im Außenbereich verwendet werden. Auch klappbare Modelle gibt es, die für das Auffahren in ein Auto
    geeignet sind. Faltbare und transportable Modelle sind besonders flexibel und leicht.
    Gemäß Größe und Tragkraft sind Schienenrampen zwischen circa 130 und 900 Euro
    erhältlich. Schienenrampen verfügbar ein geringes Eigengewicht bei
    hoher Tragkraft. Sie sind oft einfach transportierbar und
    flexibel in der Nutzung. Die Breite der Schienen kann
    im sinne Rollstuhl individuell angepasst werden. Feste
    Rampensysteme werden oft im Außenbereich angebracht und ermöglichen einen barrierefreien Zugang zu Gebäuden. Die Rampe wird
    parallel zu einer Treppe aufgestellt, sodass kein Umbau notwendig ist.
    Sie steht frei, ist mehrteilig und wird so flexibel an die Gegebenheiten angepasst.
    In aller Regel bestehen die Rampensysteme aus Stahl oder Aluminium.
    Da sich das Modell für den Außenbereich eignet, ist es wetterbeständig und rutschfest.
    Handläufe geben zusätzliche Sicherheit. Oft werden auch Podeste mit eingebaut.

  3. www.ted.com表示:

    Thanks for your personal marvelous posting! I actually enjoyed reading it, you will be a great author.I will be sure to bookmark your blog
    and definitely will come back very soon. I want to encourage one to continue your
    great job, have a nice weekend!

  4. slot表示:

    Hello there! I know this is kinda off topic but I was wondering
    if you knew where I could get a captcha plugin for my comment
    form? I’m using the same blog platform as yours and I’m having problems finding
    one? Thanks a lot!

  5. Hello there! This blog post could not be written much better!

    Going through this post reminds me of my previous roommate!
    He constantly kept talking about this. I am going to send this information to him.
    Pretty sure he will have a good read. Many thanks for sharing!

  6. I am sure this article has touched all the internet people, its really really good paragraph on building up new
    webpage.

  7. Hi there would you mind stating which blog platform you’re using?
    I’m looking to start my own blog in the near future but I’m having a hard time selecting between BlogEngine/Wordpress/B2evolution and Drupal.
    The reason I ask is because your design seems
    different then most blogs and I’m looking for something unique.
    P.S Apologies for getting off-topic but I had to ask!

  8. betflix表示:

    เว็บของพวกเราเป็นเว็บให้บริการ เกมสล็อตออนไลน์ และเป็นเว็บให้บริการรวมเกี่ยวกับเกมส์คาสิโน ที่เล่นออนไลน์แล้วได้เงินจริง ซึ่งเรามีให้บริการนานัปการเจ้า ไม่ว่าจะเป็นของค่าย SA Game, DreamGaming (DG), SexyGaming, WM,
    PGSlot, JokerGaming และค่ายชั้นนำฯลฯ ซึ่งล้วนเป็นผู้ให้บริการเกมคาสิโนออนไลน์มีชื่อเสียงนานาประการเกม พวกเรามีอีกทั้งสล็อต บาคาร่า รูเล็ต รวมทั้งเว็บของเราสามารถเล่นได้ทุกที่ทุกเวลา และทุกเครื่องใช้ไม้สอย

    ซึ่งสมาชิกทุกท่าน สามารถเล่นเกมคาสิโนของพวกเราได้ทุกเกม รวมทั้งสามารถเล่นได้ทุกที่ที่ต้องการ ถึงที่เหมาะเว็บของพวกเราด้วยเหมือนกัน
    ซึ่งพวกเรามีโปรโมชั่นให้กับคุณลูกค้าทุกๆท่าน และก็มีระบบให้ตรวจสอบและลองใช้งานก่อนลงในสนามจริง ให้ทดลองเล่นเหมือนกัน นอกจากนี้เรายังมี การให้บริการที่เป็นเกมคาสิโนออนไลน์ เกมบาคาร่า,
    เกมลิง, เกมสล็อตแมชชีน,
    ไพ่เสือมังกร แล้วก็ไฮโล ซึ่งทุกเกมสามารถเล่นเกมได้เงินจริงทุกเกม

  9. Hello there! This is my first visit to your blog!
    We are a group of volunteers and starting a new project in a community in the same niche.
    Your blog provided us beneficial information to work on. You
    have done a wonderful job!

  10. notes.io表示:

    Greetings from California! I’m bored to death at work so I
    decided to check out your website on my iphone
    during lunch break. I enjoy the information you present here and can’t wait to take a look when I get home.
    I’m shocked at how fast your blog loaded on my cell phone
    .. I’m not even using WIFI, just 3G .. Anyhow, fantastic site!

  11. Great web site. A lot of helpful information here. I’m sending it to several pals ans also sharing in delicious.
    And naturally, thank you in your effort!

  12. musescore.com表示:

    Paragraph writing is also a fun, if you be acquainted with
    then you can write otherwise it is complicated to write.

  13. I think this is one of the most vital information for me.
    And i’m glad reading your article. But want to remark on some general things,
    The web site style is ideal, the articles is really
    great : D. Good job, cheers

  14. slot gacor表示:

    I really like your blog.. very nice colors & theme.

    Did you make this website yourself or did you hire someone to do it for you?

    Plz respond as I’m looking to construct my own blog and
    would like to know where u got this from. appreciate
    it

  15. www.ted.com表示:

    Fastidious response in return of this issue with real arguments and
    describing the whole thing regarding that.

  16. Do you mind if I quote a couple of your articles
    as long as I provide credit and sources back to your blog?

    My blog is in the exact same area of interest as yours and my visitors would definitely benefit
    from some of the information you provide here. Please let me know if this
    okay with you. Cheers!

  17. Highly descriptive blog, I liked that a lot. Will there be a part 2?

  18. Heya terrific website! Does running a blog such as this take a great deal of work?
    I’ve very little expertise in coding however I had been hoping to start my own blog in the near future.

    Anyway, should you have any recommendations or tips for new blog owners please share.
    I know this is off subject nevertheless I just had to ask.
    Appreciate it!

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

  20. An outstanding share! I’ve just forwarded this onto a colleague who was doing a little homework on this.
    And he actually bought me dinner simply because I
    discovered it for him… lol. So let me reword this….
    Thank YOU for the meal!! But yeah, thanks for spending the time to talk about this matter
    here on your website.

  21. Generally I do not learn article on blogs, however I
    would like to say that this write-up very compelled me to try and
    do it! Your writing style has been surprised me. Thank
    you, very nice article.

  22. Greetings! Very useful advice in this particular article!
    It is the little changes that make the largest changes.
    Thanks for sharing!

  23. Learn More表示:

    It is projected that Americans consume at a much faster rate compared
    to the rest of the world. In line with the Sierra Membership, greatest grassroots environmental organization in the United States,
    the average American buys 53 times as numerous items as someone in China.
    Consequently, the quantity of space Americans involve
    has shown ahead at reasonably limited these days.

    With numerous items accumulated as time passes, it is no surprise that the utilization of storage devices and trash collection services have
    experienced a rise running a business within the last decade.For people or company homeowners seeking to
    cope with space-related quandaries, there
    are affordable solutions to counteract the demand for
    space in small areas. Portable storage, portable office and portable storage
    and office appliance rentals are space-saving answers that will end up being beneficial
    for your home or business.For organization homeowners, lightweight storage containers can help perform
    the job of conventional self storage units, with the ease of
    getting it on site, and prices less. Company owners and also house owners
    with start space at/near business or home should consider a storage container hire which come in a
    number of forms and styles, are very protected, and may also protect the things inside
    from excessive climate conditions. These storage units don’t incur a
    property tax fee, and typically do not need
    shortened bill rounds or responsibility waiver fees.

  24. There’s definately a great deal to know about this topic.
    I love all of the points you made.

  25. If you are going for finest contents like I do, only go
    to see this site daily because it offers feature contents, thanks

  26. So empfehlen sich Teleskoprampen beispielsweise
    in Kellerbereichen für den Transport von Fahrrädern oder auch zur Überbrückung
    von Stufen und Treppen durch Rollstuhlfahrer. Zumal
    können sie im Behindertentransport und Krankentransport verwendet werden, um
    beispielsweise die Rollstühle mit den Patienten in den Krankenwagen oder ein anderes Fahrzeug
    zu transportieren. Dies ist dann mithilfe der betreffenden Teleskoprampen ganz ohne Tragen möglich.
    Flächenrampen haben im Widerspruch zu den Schienenrampen den Vorteil, dass eine Begleitperson mit dem Rollstuhlfahrer
    zusammen über die Rampe gehen kann. U. a. sind sie einfacher in der Handhabung, da sie problemlos zu platzieren sind.

    Die Schienenrampen überzeugen hingegen durch ihr geringes Gewicht,
    wodurch sie sich a fortiori to go eignen. Oftmals sind Schienenrampen zugleich teleskopierbar und portabel.
    Mobile oder stationäre Rampe? Eine stationäre Rampe ist fest montiert und
    wird immer am selben Ort genutzt. In den meisten Fällen sind
    stationäre Rampen gleichzeitig Flächenrampen. Bei mobilen Rampen kann es
    sich um Schienen sowohl Flächenrampen handeln.

  27. slot demo表示:

    Hello very nice site!! Man .. Excellent .. Amazing ..
    I will bookmark your web site and take the feeds also? I am
    happy to search out so many helpful information right here within the submit,
    we want work out extra techniques in this regard, thank you
    for sharing. . . . . .

  28. We stumbled over here coming from a different page and thought I should check things out.

    I like what I see so i am just following you. Look forward to exploring your web page repeatedly.

  29. Its not my first time to pay a quick visit this
    web site, i am browsing this web page dailly
    and get fastidious data from here all the time.

發佈留言

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