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
Achat mГ©dicament en ligne fiable: cialis sans ordonnance – trouver un mГ©dicament en pharmacie
10 Things Everyone Has To Say About Rollators With Seats Rollators With Seats collapsible Rollator with Seat
http://pharmaciepascher.pro/# Pharmacie Internationale en ligne
download instagram stories download instagram stories .
https://damntroublemaker.com/
Viagra homme prix en pharmacie sans ordonnance: Viagra prix – Viagra pas cher livraison rapide france
Medicament information leaflet. Brand names.
can you buy prozac price
Everything about medication. Read now.
системы контроля и управления доступом купить системы контроля и управления доступом купить .
Hey! I know this is somewhat off-topic but I
had to ask. Does running a well-established blog like yours require a large amount of
work? I am completely new to writing a blog however
I do write in my diary every day. I’d like to start a blog
so I will be able to share my experience and feelings online.
Please let me know if you have any recommendations or tips
for new aspiring blog owners. Thankyou!
Also visit my webpage :: casino online
Pharmacie en ligne livraison Europe: pharmacie en ligne pas cher – pharmacie en ligne livraison europe
best instagram viewer storyanonviewer.com .
I blog often and I truly thank you for your content.
This great article has truly peaked my interest.
I will bookmark your website and keep checking for new details about once per week.
I opted in for your Feed as well.
Hello there! This post could not be written any better!
Reading through this post reminds me of my previous room mate!
He always kept talking about this. I will forward
this post to him. Fairly certain he will have a good read.
Thank you for sharing!
Here is my blog post; เครดิตฟรี pg
Viagra gГ©nГ©rique pas cher livraison rapide Viagra sans ordonnance 24h Viagra pas cher livraison rapide france
12 Companies Leading The Way In French Door Style Fridge Freezer vinterkall french door fridge/freezer review
Tilt And Turn Hinges For Upvc Windows Tools To Streamline Your Everyday Lifethe Only Tilt And Turn Hinges
For Upvc Windows Trick That Every Person Must Know
tilt and turn hinges for upvc Windows
https://clssansordonnance.icu/# Pharmacie Internationale en ligne
Viagra pas cher livraison rapide france: Viagra prix – SildГ©nafil 100 mg sans ordonnance
Профессиональный сервисный центр по ремонту плоттеров в Москве.
Мы предлагаем: ремонт плоттеров в москве
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
5 Killer Quora Answers On All-Terrain Rollators rollators
(Debra)
Сертифицированный судебный эксперт по вопросам пожарно-технической экспертизы и член республиканской Палаты судебных экспертов РК.
В моей практике исследовались возгорания в легких и грузовых автомобилей, на объектах жилой и коммерческой недвижимости, в зданиях производственного и складского назначения, энергетических установках и иных промышленных объектах.
türkiyeden azerbaycana para gönderme
Good day! This post could not be written any better! Reading through this post reminds me of my good old
room mate! He always kept talking about this.
I will forward this article to him. Pretty sure he will have a
good read. Many thanks for sharing!
Судебная пожарно-техническая экспертизаСудебная пожарно-техническая экспертиза для установления причин возгорания пожара промышленных объектов, жилых домов, квартир, автомобильного транспорта (легкового и грузового) и т.д.
Судебное экспертное электротехническое исследованиеСудебное экспертное исследование систем электроснабжения на исследуемых объектах на соответствие требованиям монтажа и эксплуатации согласно с Правилам устройства электроустановок в Республике Казахстан.
Судебное экспертиза обстоятельств пожараСудебное экспертное исследование объектов для установления механизма и причин возникновения пожара.
Судебное экспертиза веществ и материаловСудебная экспертиза веществ и материалов на предмет определения горючести материалов и веществ и возможности их воспламенения и самовозгорания.
Судебное экспертное исследование нефтепродуктов и горюче-смазочных материаловСудебно – экспертное исследование нефтепродуктов и горюче-смазочных материалов на предмет их наличия на месте возникновения пожара.
https://5stargamblingsites.com/
Hey I know this is off topic but I was wondering if you knew of any widgets I could add to
my blog that automatically tweet my newest twitter
updates. I’ve been looking for a plug-in like this for quite
some time and was hoping maybe you would have some experience with something like this.
Please let me know if you run into anything.
I truly enjoy reading your blog and I look forward to your
new updates.
Prix du Viagra en pharmacie en France: Viagra prix – Viagra Pfizer sans ordonnance
Как улучшить настроение с помощью коротких шуток
pharmacie en ligne france pas cher Acheter Cialis pharmacie en ligne france livraison internationale
Обмены электронных валют мгновенны. Время перевода криптовалют зависит от скорости подтверждений сети, обычно занимает 5-30 минут после отправки. В случае загруженности сети блокчейн, данное время может увеличится обмен trc20 на приват24
great publish, very informative. I’m wondering why the
other specialists of this sector do not understand this.
You should proceed your writing. I’m confident, you have a great
readers’ base already!