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
Roof restoration definitely brings in a variation in property value! Thanks for highlighting its own importance. Figure out even more at reroofing perth
срочная наркологическая помощь в москве срочная наркологическая помощь в москве .
наркологическая скорая в москве наркологическая скорая в москве .
наркологическая скорая помощь москва наркологическая скорая помощь москва .
Thanks to porta potty rental
Everything is very open with a really clear description of the challenges.
It was truly informative. Your site is extremely helpful.
Thanks for sharing!
срочно сделать загранпаспорт http://www.cinemania.forum24.ru/?1-15-0-00001690-000-0-0-1735288325 .
The schools in Scottsdale are highly rated, making it a desirable place for families looking for homes! Get more insights at home sales paradise valley az
Tadalafil Tablet Generic Cialis without a doctor prescription Buy Tadalafil 10mg
срочное оформление загранпаспорта срочное оформление загранпаспорта .
скорая наркологическая помощь на дому в москве http://www.klin.0pk.me/viewtopic.php?id=4428 .
http://fastpillseasy.com/# where can i get ed pills
срочное изготовление загранпаспорта срочное изготовление загранпаспорта .
https://fastpillsformen.com/# order viagra
срочно сделать загранпаспорт срочно сделать загранпаспорт .
Cialis 20mg price in USA: Cialis without a doctor prescription – Cialis over the counter
Sildenafil Citrate Tablets 100mg Fast Pills For Men cheap viagra
Is anyone else overwhelmed by the amount of junk that builds up over time? I’ve begun a monthly junk elimination routine to stay on top of it! For those wanting to obtain organized junk removal
загранпаспорт стоимость загранпаспорт стоимость .
наркологическая скорая помощь москва [url=www.vishivayu.ukrbb.net/viewtopic.php?f=12&t=13503]www.vishivayu.ukrbb.net/viewtopic.php?f=12&t=13503[/url] .
If you haven’t tried pressure washing yet Pressure Washing North York
срочная наркологическая помощь срочная наркологическая помощь .
5 Laws That Will Help The Search Engine Optimisation Company Industry saas Content marketing Company
The Top Five Tips To Be Aware The Difference Between Online
And Live Poker 닌자거북이 에볼루션 다시보기
what is the cheapest ed medication FastPillsEasy online ed pharmacy
Guide To Locksmith Near Me Affordable: The Intermediate Guide The Steps To Locksmith Near Me Affordable locksmith near me affordable – Clifford,
Buy Cialis online: buy cialis online – cheapest cialis
I’ve been living in Puyallup for a while now, and finding a reliable chiropractor has been a game-changer for my health. It’s amazing how much better I feel after regular adjustments https://list.ly/joyceywtjk
Generic Viagra online Fast Pills For Men Viagra online price
My family members every time say that I am killing my time here at net, but
I know I am getting knowledge daily by reading such pleasant
posts.