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); //排序後:法国话,京片子,英语,中国,中文

You may also like...

6,835 Responses

  1. learn more表示:

    Spot on with this write-up, I honestly believe that this amazing site needs a great deal more attention. I’ll probably be back again to read through more, thanks for the information!

  2. Victornax表示:

    Воины-пайщики оказались без защиты в тылу
    Пайщики «Бест Вей» — участники СВО готовы защищать свой кооператив
    Крупнейший жилищный кооператив военнослужащих
    Многие пайщики кооператива «Бест Вей» и те, в чьих интересах приобретаются квартиры в кооперативе, — участники СВО. И они сами, и их родственники возмущены событиями, происходящими вокруг кооператива. Ведь защищая интересы страны на фронте, в тылу они не защищены от того, что не могут приобрести недвижимость из-за того, что счета кооператива с почти 4 млрд рублей уже более двух лет находятся под арестом — притом, что сумма ущерба по уголовному делу, рассматриваемому Приморским районным судом Санкт-Петербурга, согласно обвинительному заключению, составляет 282 млн рублей.

    «Надеемся, новое руководство Министерства обороны поможет урегулировать ситуацию»

    Наталья Пригаро, мать пайщика кооператива — участника СВО из Нефтеюганска Даниила Пригаро:

    — Сын расплатился за однокомнатную квартиру, приобретенную с помощью кооператива, еще два года назад, подал пакет документов на оформление квартиры в собственность в Росреестр в начале сентября 2022 года — и все это время не может зарегистрировать собственность на нее из-за того, что в Росреестре она значится как арестованная. В конце сентября 2022 года он был мобилизован. Сын брал кредит, чтобы расплатиться за квартиру с кооперативом. Планировал продать эту квартиру и взять квартиру побольше в ипотеку. Однако неоднократно накладывался арест на недвижимость кооператива, несмотря на то что сейчас ареста нет — последний арест, накладывавшийся осенью 2023 года, 19 февраля истек, ходатайства о новом аресте дважды отклонены судом, по Росреестру арест с квартиры до сих пор не снят. В результате кредит приходится платить, квартира в собственность до сих пор не оформлена.

    У сына нет никакой физической и финансовой возможности выяснять отношения с Росреестром — в административном или судебном порядке, он приезжает в отпуска на неделю-полторы, ему не до сутяжничества. Я нахожусь в Анапе, приобрела квартиру с помощью кооператива — сын не имеет возможности сделать на меня генеральную доверенность, а я не могу из Анапы приехать в Нефтеюганск и решать вопросы в Росреестре — кроме поезда, сейчас, сами понимаете, ничего не ходит (конец цитаты).

    «На безобразие, которое происходит с кооперативом, мы пишем жалобы во все инстанции, — говорит она. — Надеемся, новое руководство Министерства обороны поможет урегулировать ситуацию».

    «Надежда, что все разрешится, остается — не может же все быть коррумпировано»

    Елена Бойко — пайщик кооператива из Новосибирска и мать солдата, воющего в СВО, для которого она собиралась приобрести одну из двух квартир в кооперативе. «Я стала пайщиком кооператива в 2021 году. В январе 2021 года подала заявление на покупку двух квартир с помощью кооператива по накопительной программе. У меня двое детей — сын и дочь, им нужно жилье. В 2020 году взяли в ипотеку загородный дом — причем оформили на сына как единственного, кому ее могли одобрить, а в 2021 году он ушел в армию как призывник, а потом подписал контракт. Его относительно недавно отправили „за ленточку“. Думали, что поживем в ипотечном доме, и тут как раз подойдет очередь приобретать квартиры с помощью кооператива. Мы останемся жить в частном доме, а дети въедут в кооперативные квартиры».

    «Ипотека — это разорительно, — подчеркивает Елена, — мы взяли 2,5 млн, а за 30 лет отдадим 6 млн. Когда появился кооператив, для нас это была возможность предоставить каждому из детей жилье: за 10 лет или раньше они расплатятся с кооперативом, причем с минимальной по сравнению ипотекой переплатой, и у них будет собственное жилье. Из-за репрессий в отношении кооператива мы можем быть этой возможности лишены».

    «Я всем сердцем переживаю за ситуацию с кооперативом, заявление о выходе из кооператива пока не пишу — надеюсь, что его деятельность „разморозится“, — говорит Елена. — Обращаемся во все инстанции, в прокуратуру — приходят отписки. Смысл происходящего я понимаю хорошо — когда-то занималась кредитным потребительским кооперативом: нас тогда закрыл Центральный банк. Нашел формальный повод. Но настоящая причина была в том, что мы мешали банкам обирать клиентов. Но надежда на то, что все разрешится, остается — не может же быть все коррумпировано».

    «Больше всего в нашей ситуации возмущает то, что наши воины стоят на стороне государства на фронте, а здесь, в тылу, их интересы нарушаются государственными структурами. Такого быть не должно!»

    «Для многих кооператив — единственная возможность приобрести квартиру»

    Лариса Зискинд — пайщица «Бест Вей», переехавшая с помощью кооператива с семьей — с дочерью, зятем и маленьким внуком ­- с Дальнего Востока в Белгородскую область. Ее зять, живущий в кооперативной квартире, находится на фронте СВО. «С помощью кооператива я приобрела квартиру в двухэтажном доме в селе Пушкарное Белгородской области — мы с дочерью переехали сюда. Мы уже два года расплачиваемся за него с кооперативом. Не до конца сделали ремонт, кухни фактически нет: моем посуду в ванной. Финансовых средств не хватает, так как зять уже год на СВО, пока ни разу не был в отпуске, и перевести деньги с его карты в ВТБ сейчас непросто, потому что карта — в расположении, до ближайшего банка ехать далеко, а он сам — на линии фронта. Мы фактически живем с выплат на ребенка, на мне кредиты — у меня полпенсии уходит на их оплату. Квартира по Росреестру находится под арестом, хотя арест по квартирам кооператива арест истек — а я боюсь ехать в Белгород, чтобы решать по ней вопрос. Я с ребенком на улицу гулять не выхожу в нынешней военной обстановке — сирены воздушной тревоги постоянные. Побыстрее бы наши войска создали санитарную зону в Харьковской области!»

    По поводу покупки квартиры Лариса сообщает, что «ипотека точно никак не светила. Кооператив — это 14 тыс. в месяц и всего лишь 10 лет. В кооперативе даже студентка может приобрести квартиру, почти не переплачивая. При покупке через банк придется заплатить еще как минимум за одну квартиру».

    «Среди пайщиков кооператива очень много пенсионеров, социально незащищенных людей, это была их единственная возможность приобрести квартиру, — говорит Лариса. — Из-за репрессий против кооператива мы можем лишиться единственного жилья. Мы куда только не писали в защиту кооператива. Но, видимо, слишком большой куш. Кооперативу не дают даже платить налоги. Надеемся, что отношение к кооперативу в результате справедливого разбирательства изменится в лучшую сторону».

    «Мы очень устали. Но боремся»

    Людмила Гарина — пайщица кооператива из Саратова, зять которой, проживающий вместе с ней в кооперативной квартире, участвует в СВО. «Я проживаю в кооперативной квартире почти три года вместе с дочерью и внуком, вносим ежемесячные платежи через госуслуги».

    «Возможности взять ипотеку не было, — говорит Людмила. — Фактически у нас один работающий человек — дочь, зять мобилизован, внук — студент, внучке — четыре года. Мы с мужем пенсионеры».

    «У нас с кооперативом проблем не было никаких, — говорит она, — но сейчас уверенности в завтрашнем дне нет. Пишем во все возможные инстанции, в том числе в Администрацию президента, ходили на прием к Володину. Пока ничего не помогает. Вся надежда на то, что суд разберется».

    «Хотелось, чтобы вопрос о возобновлении работы кооператива быстрее решился, — говорит она, — тогда стало бы проще. Когда кооператив заработает, будет совершенно иная ситуация. Мы очень устали. Но боремся».

    «20 тыс. пайщиков кооператива не так просто остановить»

    Алла Яровая — пайщик кооператива из Пятигорска и представитель пайщицы Людмилы Дворцовой, сын которой, Игорь Дворцов, находился на СВО, а теперь служит внутри страны. «Людмила приобрела с помощью кооператива в Пятигорске квартиру для своего сына. Вступила в кооператив она в 2017 году, сначала находилась в накопительной программе — накапливала на первоначальный паевый взнос, накопила, потом стояла в очереди на приобретение жилье, приобрела с помощью кооператива однокомнатную квартиру за 1450 тыс. рублей. Потом приобрела квартиру и постепенно полностью за нее расплатилась. Работала для этого на двух работах, в том числе санитаркой в инфекционном отделении».

    Но оформить квартиру в собственность не удалось, так как она оказалась под арестом, поясняет Алла. И хотя арест 19 февраля истек и больше не накладывался, суд первой инстанции в Пятигорске этот арест подтвердил. «По вопросу получения права собственности и снятия ареста мы обратились в Пятигорский городской суд, где судья очень предвзято отнесся к решению вопроса и мы получили отказ, — говорит Алла, — Хотя аналогичный вопрос рассматривался в Минераловодском суде и там судья вынесла положительное решение и в настоящий момент пайщик получил право собственности на свою квартиру. Предстоит рассмотрение в апелляционной инстанции — несмотря на то, что рассматривать нечего: ареста на недвижимость кооператива сейчас нет. А на квартиру Людмилы Дворцовой — почему-то есть».

    «Кооператив — единственная возможность для людей со средним достатком получить жилье, — говорит Алла, — Нерешенный вопрос — налоги. Мы вынуждены платить налоги с юридических лиц, но мы же физические лица. К депутатам — с нас берут налог как с юрлица. Почему мы должны оплачивать — мы же физлица? Во многих регионах это сделано. Надеемся добиться того, чтобы это было сделано по всей стране».

    «20 тыс. пайщиков кооператива не так просто остановить, — подчеркивает пайщица. — Это наши деньги, и мы за них боремся. Обязательно отстоим наш кооператив!»

    «Активно участвую в защите кооператива»

    У пайщицы кооператива, жительницы из Ленинградской области Татьяны Власенко старший сын находится на СВО с сентября 2022 года. «Три месяца проходил обучение, а потом оказался „за ленточкой“, — говорит Татьяна. — Мы должны были в конце лета 2022 года купить квартиру с помощью кооператива — квартиру планировали большую. Но работа кооператива оказалась заблокирована, и кооператив не может ничего купить уже более двух лет, так как и его счета, и его деятельность заблокированы. Деньги пайщиков, собранные для приобретения квартир, при этом обесцениваются».

    «Я активно участвую в защите нашего кооператива, — говорит Татьяна. — Езжу на все суды в Санкт-Петербурге, хотя живу в деревне — ехать два с половиной, а то и три часа, мне 64 года, а путь неблизкий. И сын в этом поддерживает меня».

    «Вот уже более двух лет работа кооператива заблокирована, деньги обесцениваются»

    У пайщицы из Хабаровска Натальи Ромашко на СВО было два племянника — один, к сожалению, погиб. Планировалась покупка большой квартиры в Хабаровске, Наталья состояла в накопительной программе. «Вот уже более двух лет работа кооператива заблокирована, деньги обесцениваются, — говорит Наталья. — Я участвую в защите кооператива, пишу письма в прокуратуру, в высшие государственные инстанции, потому что нарушаются наши права, нас лишают возможности приобрести квартиру вне ипотечной системы. Пока приходят одни отписки, но борьбу мы продолжаем!»

    «Ситуация — как на СВО»

    Пайщица Светлана Иванова из Новосибирска, волонтер СВО, планировала приобрести с помощью кооператива две квартиры — для себя и для сына, который воюет на СВО добровольцем. «До этого я продала квартиру и сейчас вообще без собственного жилья, — говорит она. — Вступила в кооператив по накопительной программе, рассматривали для приобретения квартиры Крым и Новосибирск. В СВО участвую как волонтер — не остаюсь в стороне, когда Родине нужна помощь».

    «От ситуации с кооперативом очень многие люди пострадали, — говорит Светлана. — Ситуация — как на СВО. И еще больше пострадают, если реализуется плохой сценарий. Хочется надеяться на то, что все образуется, правда восторжествует. Заявление о выходе из кооператива и возврате паевых средств я не подавала. Готова продолжить участие в нем, готова приобрести недвижимость с его помощью: это самый лучший вариант покупки квартиры».

    «Сдаваться в планах нет»

    Пайщица Марина Янковская родом из Хабаровска, она переехала в Новороссийск, ее супруг погиб на СВО. «У нас уже подходила очередь на покупку квартиры в Новороссийске для нашей семьи, мы должны были подбирать объект, — рассказывает она. — Но два года назад все остановилось. Хотели приобрести двухкомнатную квартиру в Новороссийске. Деньги лежат на арестованных счетах кооператива — а недвижимость за это время подорожала. Надеемся хоть что-то приобрести после того, как счета разблокируют».

    «Мы всячески поддерживаем кооператив, — говорит Марина. — Записывали видео, что мы не обманутые, а вполне довольные пайщики, объясняли, что это никакая не пирамида, а организация, созданная в помощь людям. Ждем, когда снимут эти аресты. Сдаваться в планах нет».

  3. Altoncok表示:

    Tributes flood in for BBC sport commentator whose wife and daughters were killed in suspected crossbow attack
    анальный секс зрелых

    Figures from across the United Kingdom have offered their condolences to a BBC sport commentator, after his wife and two daughters were killed by an alleged crossbow attacker, in deaths that again drew attention to the epidemic of violence against women.

    Carol Hunt, 61, wife of BBC horse racing commentator, John Hunt, and their daughters, Hannah Hunt, 28, and Louise Hunt, 25, died from injuries sustained in an attack in Bushey, just northwest of London, on Tuesday, according to police and Britain’s public broadcaster.

    A 26-year-old suspect wanted in connection with the killings, and named as Kyle Clifford, was found by British police in Enfield, north London, on Wednesday, following a sprawling manhunt. There were no previous reports to the force over Clifford, who is in serious condition in hospital and is yet to speak with officers, Hertfordshire Police said in a statement.

    A crossbow was recovered as part of the investigation, which police believe was used in a “targeted incident.”
    Epidemic of violence against women
    The killings of the three women rocked Britain, where mass murders are infrequent but violence against women and girls has been officially labeled as a national threat.

    A woman is killed by a man every three days in the UK and one in four women will experience domestic violence in her lifetime, the United Nations’ special rapporteur on violence against women and girls, Reem Alsalem, said earlier this year.

    Charities and human rights organizations have subsequently reiterated urgent demands to tackle femicide in the UK.

  4. MarceloMaria表示:

    проститутка метро люблино https://rnd.prostitutki.sex

  5. Javiercrets表示:

    проститутки котельники проститутки в раменском

  6. My spouse and i do not possess a lot of time now to compose plenty of my personal blathering thoughts,(my lil woman wants consideration, : )), however when I logon yet again, I will explain thorough precisely why To be sure with this particular write-up.

  7. iptv表示:

    You have made some really good points there. I checked on the web for more info about the issue and found most individuals will go along with your views on this website.

  8. I appreciate your wp theme, exactly where would you download it from?

  9. I am not real fantastic with English but I come up this real leisurely to interpret .

  10. The 10 Most Terrifying Things About Symptoms Of Adhd In Adults symptoms Of Adhd In adults

  11. Hi all, – – seen the site unintentionally whereas walking round the word wide web this morning, and as well , content material we have done! I enjoy the design but also plan not to mention designs, however i must point out that I’m striving anytime it all a whole lot. I’m the usage of Shiira Step two visitor, properly headlines proceeding group once and for all. Appear Great regarding Netscape Six having said that.

  12. Youre so cool! I dont suppose Ive read anything this way just before. So nice to seek out somebody with a few original thoughts on this subject. realy thanks for beginning this up. this web site is one thing that is needed on the net, someone with some originality. helpful project for bringing something totally new towards the web!

  13. Subsequently, after spending many hours on the internet at past We’ve uncovered anyone that certainly does know what they are discussing thank you very much wonderful blog post

  14. Trefone表示:

    Здравствуйте!
    Официальная покупка диплома вуза с сокращенной программой обучения в Москве
    csleague.ca/диплом-о-среднем-образовании-купить-н
    Рады помочь!.

  15. Jlpbvf表示:

    order hytrin generic – buy generic flomax purchase dapoxetine for sale

  16. 7 Simple Changes That Will Make An Enormous
    Difference To Your Workers Compensation Litigation workers’ compensation Law Firm (lott-rose-2.blogbright.Net)

  17. 20 Fun Facts About Erb’s Palsy Law erb’s palsy Attorneys

  18. 10 Things You Learned In Kindergarden Which Will Aid You In Obtaining Mesothelioma Mesothelioma Law Firm

  19. there are times that good public relations cannot be always achieved,

  20. Ronnieriz表示:

    I will create a feed https://undersapr.ru for Yandex Webmaster in the “Doctors” category. The feed is used to promote doctors’ cards in search for free

  21. I bookmared your site a couple of days ago coz your blog impresses me.,*,-”

  22. Mazrueb表示:

    Здравствуйте!
    Всё, что нужно знать о покупке аттестата о среднем образовании без рисков
    mandiplomik.ru

  23. Heya i am for the first time here. I came across this board and I find It really useful & it helped me out a lot. I hope to give something back and help others like you helped me.

  24. Hello blogger. I like your blog about Tales from abroad » Blog Archive » Rafting. I was wondering, i am planning to make a blog for myself. I want to use wordpress like you. Where did you get your template? If you post your answer here below, i will read this in the next few day’s. Thanks bbw webcamsex

  25. Intimately, the article is in reality the most excellent on that precious topic. I agree with your conclusions and will thirstily look forward to your coming updates. Simply saying thanks definitely will not simply be sufficient, for the phenomenal lucidity in your writing. I definitely will at once grab your rss feed to stay informed of any kind of updates. Fabulous work and also much success in your business dealings!

  26. An fascinating discussion may be worth comment. I’m sure that you ought to write much more about this topic, may possibly not often be a taboo subject but usually people are too few to dicuss on such topics. To another. Cheers

  27. iptv表示:

    I would like to thank you for the efforts you’ve put in writing this site. I’m hoping to check out the same high-grade content from you later on as well. In truth, your creative writing abilities has inspired me to get my own website now 😉

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。