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
pravoslavieug.ru/ — Откройте для себя современные решения для вашей кухни.
скорая наркологическая помощь на дому в москве скорая наркологическая помощь на дому в москве .
Relaxation Therapy 논현오피 – Europatrc.ru –
Thank you for discussing various styles of garden fencing; it’s inspired me to rethink my outdoor space—I’ll check out ideas at fence builders near me
The straightforwardness of working with ###anything### is such an attractive factor when selling your home quickly sell your Baltimore home for cash
where can i get ed pills FastPillsEasy best ed medication online
I appreciated this post. Check out photocopiers near me for more
срочное оформление загранпаспорта срочное оформление загранпаспорта .
купить аттестат
Can’t wait to get returned on the water this summer season! Renting by means of boat rental was once such an easy feel ultimate time
Thanks for the useful suggestions. Discover more at roof replacement nearby
купить аттестат за 9 класс
http://fastpillsformen.com/# generic sildenafil
скорая наркологическая помощь на дому в москве скорая наркологическая помощь на дому в москве .
Thanks for the useful suggestions. Discover more at obtenez plus d’info
http://maxpillsformen.com/# Generic Cialis without a doctor prescription
Your style is really unique compared to other folks I’ve read stuff from.
Thanks for posting when you’ve got the opportunity, Guess I will just bookmark this
web site.
How To Win At Roulette 에볼루션 알가격
Se stai cercando un’agenzia SEO a Bologna che possa migliorare la tua visibilità online, ti consiglio di dare un’occhiata a agenzia di marketing
срочное оформление загранпаспорта срочное оформление загранпаспорта .
I enjoy what you guys are up too. This sort of clever work
and coverage! Keep up the awesome works guys I’ve added you guys to my
blogroll.
срочная наркологическая помощь срочная наркологическая помощь .
Казино Лев – это всегда интересные турниры
и бонусы.
игровые автоматы демо играть бесплатно
Five Club Health Benefits That You Can Do Without 오피
cheap ed meds online: cheap cialis – pills for erectile dysfunction online
cheapest viagra Cheap generic Viagra cheapest viagra
купить диплом в калуге
10 Tell-Tale Signs You Must See To Find A New 4 Mph Mobility Scooter 4
mph mobility scooters (Rob)
The importance of a good fence cannot be overstated! I’m definitely visiting fence builders near me for ideas
where can i get ed pills: erectile dysfunction pills for sale – ed medication online