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
Hello there! I simply would like to offer you a big thumbs up for your great info you have
here on this post. I will be returning to your site for more
soon.
Вопросы и ответы: можно ли быстро купить диплом старого образца?
Oil Palm plantation still in demand
This page really has all of the information I wanted about this subject and didn’t know who to ask.
This was very beneficial. For more, visit MK Sports
lisinopril1st: Lisinopril 1st – Lisinopril 1st
Узнай все о септопластика ценаоперация на перегородке носа
вывод из запоя на дому http://www.motik13.0pk.me/viewtopic.php?id=1997/ .
вывод из запоя в краснодаре https://dubna.myqip.ru/?1-5-0-00000283-000-0-0-17307453197 .
краснодар вывод из запоя dolgoprudni.rusff.me/viewtopic.php?id=3065#p8958 .
darknet sites tor market links https://darknetmarketstore.com/
prednisone drug costs: Prednisone Without Prescription – prednisone 5mg coupon
Приветствую. Подскажите, где почитатьразные блоги о недвижимости? Пока нашел – https://oookuper.ru
Приветствую. Подскажите, где почитатьразные статьи о недвижимости? Пока нашел – https://oookuper.ru
The link between effective security procedures security guard service
вывод из запоя краснодар на дому http://aqvakr.forum24.ru/?1-7-0-00011577-000-0-0-1730744773 .
вывод из запоя анонимно краснодар https://chesskomi.borda.ru/?1-8-0-00003046-000-0-0-1730745020 .
Приветствую. Подскажите, где почитатьразные статьи о недвижимости? Сейчас читаю – https://oookuper.ru
краснодар вывод из запоя http://www.wisdomtarot.tforums.org/viewtopic.php?f=16&t=11706/ .
Why users still make use of to read news papers when in this technological globe everything is available on net?
вывод из запоя дешево краснодар http://dubna.myqip.ru/?1-5-0-00000283-000-0-0-17307453197 .
Plavix 75 mg price [url=http://plavixclo.com/#]PlavixClo Best Price[/url] generic plavix
кухни на заказ недорого спб – это функциональность и комфорт по разумной цене.
вывод из запоя с выездом https://vkontakte.forum.cool/viewtopic.php?id=19618 .
Приветствую. Подскажите, где найтиполезные статьи о недвижимости? Пока нашел – https://oookuper.ru
Thank you for the good writeup. It in fact
used to be a amusement account it. Look complex to more delivered agreeable from you!
By the way, how can we keep in touch?
Узнай все о выпрямление носовой перегородкиискривление носовой перегородки операция цена
Its not my first time to visit this website, i am browsing this
website dailly and take pleasant data from here everyday.
pp slot
certainly like your website however you have to take a look at the spelling on quite a few of your posts.
Several of them are rife with spelling problems and I in finding it very bothersome to tell the reality then again I will surely
come again again.
Узнай все о септопластика сколько стоитсептопластика носа цены в москве