JS 陣列排序範例
馬老師離開待了約十幾年的教學界,目前在外商科技公司擔任Senior Consultant的工作,原因當然很多,未來有空再慢慢發文章分享,剛好最近有點時間,怕以後忘記,把最近專案中用到的一些程式筆記下來,如果大家有需要,也可以參考使用,這一篇是關於Javascript陣列排序的部分。
通常若有較多的內容需要儲存,變數就沒有陣列來的好用,所以陣列是拿來儲存大量的資料時所使用的,且儲存在裡面的資料,還可以選擇經過排序之後再呈現至畫面上,例如:
var name = ["stanley", "jack", "anita" , "mary"]; name.sort() //依照字母排序 console.log(name); // 輸出 ["anita", "jack", "mary", "stanley"] names.reverse() //反轉陣列內容 console.log(name); //輸出 ["stanley", "mary", "jack", "anita"]
但若我們同時有多個陣列,但希望以其中之一的內容排序時,也可以同步更新到另外一個陣列,該如何處理呢?可以參考以下的方式:
var name = ["stanley", "jack", "anita" , "mary"]; var gender = ["male" , "male" , "female" , "female"]; var score = [30, 10, 40 , 80]; var ID = ["S1" , "S2" , "S3" , "S4"]; console.log("name : " + name + "; score : " + score + "; gender : " + gender + "; ID : " + ID); /* 排序前 name : stanley,jack,anita,mary; score : 30,10,40,80; gender : male,male,female,female; ID : S1,S2,S3,S4; */ var list = []; for (var i = 0; i < name.length; i++){ list.push({ 'name': name[i], 'score': score[i], 'gender': gender[i], 'ID': ID[i] }); } list.sort(function(a, b) { return ((a.name < b.name) ? -1 : ((a.name == b.name) ? 0 : 1)); }); for (var i = 0; i < list.length; i++) { name[i] = list[i].name; score[i] = list[i].score; gender[i] = list[i].gender; ID[i] = list[i].ID; } console.log("name : " + name + "; score : " + score + "; gender : " + gender + "; ID : " + ID); /* 排序後 name : anita,jack,mary,stanley; score : 40,10,80,30; gender : female,male,female,male; ID : S3,S2,S4,S1; */
若是希望按照分數排序,則可以將sort function 修改為下:
//score 由小到大 list.sort(function(a, b) { return a.score - b.score }); //score 由大到小 list.sort(function(a, b) { return b.score - a.score });
補充:
上述的排序內容均以英文和數字為主,若是遇到中文可使用localeCompare進行,而排序的方式是漢語拼音順序,以下為範例:
var arr = ["二","五","四","一","三"]; //漢語拼音:一[yi], 二[er], 三[san], 四[si], 五[wu] console.log("排序前:" + arr); // 排序前:二,五,四,一,三 arr.sort(function(a,b){ return a.localeCompare(b, 'zh'); //排序後:二,三,四,五,一 }); console.log("排序後:" + arr); var arr = ["中文","英語","法國話", "京片子", "中國"]; //中文[zhong wen], 英語[ying yu], 法國話[fa guo hua], 京片子[jing pian zi], 中國[zhong guo] console.log("排序前:" + arr); //排序前:中文,英語,法國話,京片子,中國 arr.sort(function(a,b){ return a.localeCompare(b, 'zh'); }); console.log("排序後:" + arr); //排序後:法國話,京片子,英語,中國,中文 var arr = ["中文","英语","法国话", "京片子", "中国"]; console.log("排序前:" + arr); //排序前:中文,英语,法国话,京片子,中国 arr.sort(function(a,b){ return a.localeCompare(b, 'zh'); }); console.log("排序後:" + arr); //排序後:法国话,京片子,英语,中国,中文
Здравствуйте!
Официальная покупка диплома вуза с сокращенной программой обучения в Москве
rushkadiplomik.ru
Здравствуйте!
Приобрести документ ВУЗа можно в нашей компании в Москве.
rushkas-diplom.ru
Аренда экскаватора погрузчика в Москве, надежно и выгодно.
Выбор экскаватора-погрузчика в Москве, только у нас.
Где арендовать экскаватор-погрузчик в Москве?, ждет вас.
Быстро и удобно, в столице.
Сравните цены на аренду экскаватора-погрузчика в Москве, заказывайте у нас.
Аренда экскаватора-погрузчика в Москве: плюсы и минусы, у нас в сервисе.
Экономьте время и деньги, воспользуйтесь нашими услугами.
Советы по выбору техники для строительства, в Москве.
Где найти надежную аренду экскаватора-погрузчика в Москве?, у нас в сервисе.
Куда обратиться за арендой техники, в столице.
Как сэкономить на строительстве, в столице.
Советы по оформлению проката, в Москве.
Специализированная техника на прокат, в столице.
Вопросы и ответы о прокате, у нас в сервисе.
Современные возможности аренды, в столице.
Лучшие предложения по прокату, в Москве.
Выбор техники для строительных работ, в столице.
Выбор экскаватора-погрузчика в Москве: где найти лучшее предложение?, у нас в сервисе.
аренда погрузчика цена https://arenda-ekskavatora-pogruzchika197.ru/ .
Whereas I know this may most likely get lost amongst all the spam I simply needed to let you realize you could have a spelling mistake in your put up that you might need to right only for the sake of professionalism
I love to visit your web-blog, the themes are nice.’-\’-;
Добрый день!
Заказать диплом о высшем образовании.
hulu-com-forgot.mn.co/posts/61748483
Terrific paintings! This is the kind of info that are meant to be shared across the internet. Disgrace on the seek for not positioning this submit upper! Come on over and seek advice from my site . Thanks =)
I am not sure where you’re getting your information, but good topic. I needs to spend some time learning more or understanding more. Thanks for great info I was looking for this information for my mission.
i was home schooled when i was still very young and i have to stay that it is also a great way to educate your kids,,
Very good brief article! I actually valued often the looking through. I hope to read simple things much more away from you. I’m sure you got amazing perception and also plans. I will be incredibly amazed utilizing ths important information.
See What Treadmill Used For Sale Tricks The Celebs
Are Making Use Of treadmill used for sale (Sonja)
Лучший выбор для аренды автобуса в Санкт-Петербурге, транспортное средство для экскурсии.
Выгодные предложения на аренду автобуса в Санкт-Петербурге, делайте выбор нашими услугами.
Лучшие автобусы для аренды в СПб, путешествуйте с комфортом.
Аренда автобуса для торжества в Санкт-Петербурге, с легкостью.
Удобный трансфер в Санкт-Петербурге на автобусе, быстро и безопасно.
Корпоративный праздник на нашем автобусе в СПб, оригинально и ярко.
Экскурсия на комфортабельном автобусе в Санкт-Петербурге, увлекательно и запоминающе.
Аренда автобуса для школьной поездки в Санкт-Петербурге, весело и обучающе.
Свадебный автобус в СПб, стильно и празднично.
Как выбрать автобус для аренды в СПб, важные рекомендации от наших экспертов.
Экономные варианты аренды автобуса в СПб, со всеми выгодами.
Полный список услуг при аренде автобуса в СПб, узнайте перед заказом.
Недостатки аренды автобуса с водителем в СПб, объективный обзор.
Анализ цен на аренду автобуса в Санкт-Петербурге: где дешевле, подробное рассмотрение.
Маленький автобус в аренду для поездки по Санкт-Петербургу, компактно и удобно.
Прокат автобуса для музыкального фестиваля в СПб, с учетом всех особенностей.
Аренда автобуса для корпоративного веселья в Санкт-Петербурге
аренда автобуса https://arenda-avtobusa-v-spb.ru/ .
An impressive share, I just with all this onto a colleague who was performing a little analysis for this. Anf the husband the fact is bought me breakfast simply because I discovered it for him.. smile. So permit me to reword that: Thnx for that treat! But yeah Thnkx for spending time to go over this, I find myself strongly about it and enjoy reading on this topic. Whenever possible, as you become expertise, could you mind updating your website to comprehend details? It’s extremely ideal for me. Huge thumb up for this short article!
I have been exploring for a little bit for any high-quality articles or blog posts on this sort of area . Exploring in Yahoo I at last stumbled upon this website. Reading this information So i am happy to convey that I’ve an incredibly good uncanny feeling I discovered exactly what I needed. I most certainly will make certain to do not forget this web site and give it a glance regularly.
This Is How Sweet Bonanza Demo Pragmatic Will Look Like In 10 Years sweet bonanza® slot demo by Pragmatic play
I’m typically to blogging and i actually respect your content. The article has really peaks my interest. I am going to bookmark your site and maintain checking for brand spanking new information.
Great write-up, I am regular visitor of one’s blog, maintain up the excellent operate, and It is going to be a regular visitor for a long time.
Thanks for the post I actually learned something from it. Very good content on this site Always looking forward to new post.
A Intermediate Guide On Semi Truck Litigation semi truck accident law firm (Sheena)
This is the right site for anybody who would like to understand this topic. You realize a whole lot its almost hard to argue with you (not that I personally will need to…HaHa). You definitely put a fresh spin on a subject which has been written about for many years. Wonderful stuff, just excellent.
Привет!
Как оказалось, купить диплом кандидата наук не так уж и сложно
pristinefleetsolution.com/где-купить-диплом-советы-и-отзывы
Будем рады вам помочь!.
Oh my goodness! a great write-up dude. Many thanks Nevertheless I am experiencing problem with ur rss . Do not know why Unable to sign up for it. Can there be anyone finding identical rss issue? Anyone who knows kindly respond. Thnkx
Здравствуйте!
Официальная покупка диплома вуза с сокращенной программой обучения в Москве
rushkadiplomik.ru
Guide To Online Shopping Uk Reviews: The Intermediate Guide To Online Shopping Uk Reviews Online shopping uk reviews
Wonderful blog post and certainly will help with becoming familiar with the subject better.
10 Wrong Answers To Common 3 Wheeler Buggies Questions: Do You Know The
Right Answers? 3 wheel Buggy
We still cannot quite believe that I should often be a kind of checking important points seen on your webblog. Our family and i also are sincerely thankful with regards to your generosity too as for giving me possibility pursue our chosen profession path. Wanted you important information I purchased within your web-site.
The 12 Worst Types Of Accounts You Follow On Twitter demo Slot Sugar
I prefer this kind of website greatly, It’s any rattling good berth to read and get details.
I have a comparable thermometer which was my token for my very journey towards US. I didn’t completely that we have to place it in direction of the chicken despite its cooking till I noticed it being used in a movie.