JavaScript非數字(中文)排序

來源:互聯網
上載者:User

標籤:oca   src   其他   參數   war   tle   數組   中文   com   

  直接上代碼:

  

 1     var arr=[ 2             {name:"張散步",age:"23",sports:"籃球",number:"231123"}, 3             {name:"李斯的",age:"3",sports:"鋼琴",number:"534563"}, 4             {name:"艾倫",age:"63",sports:"排球",number:"345455"}, 5             {name:"王武",age:"33",sports:"乒乓球",number:"867324"}, 6             {name:"乏力",age:"26",sports:"足球",number:"132457"} 7         ]; 8  9         //console.log(ForwardRanking(arr,"name"));//正序10         //console.log(ReverseRanking(arr,"name"));//反序11         //console.log(ForwardRanking(arr,"sports"));//正序12         //console.log(ReverseRanking(arr,"sports"));//反序13 14 15         /* 中文正向排序16          *17          * data:對象數組18          * p:排序的參數名19          *20          * */21         function ForwardRanking(data, p) {22             for (i = 0; i < data.length - 1; i++) {23                 for (j = 0; j < data.length - 1 - i; j++) {24                     var dd = (data[j][p].localeCompare(data[j + 1][p], "zh"));//1---前者往後移,-1===位置不變25                     if (dd > 0) {26                         var temp = data[j];27                         data[j] = data[j + 1];28                         data[j + 1] = temp;29                     }30                 }31             }32             return data;33         }34 35 36         /*反向排序37          *38          * data:對象數組39          * p:排序的參數名40          *41          * */42         function ReverseRanking(data, p) {43             for (i = 0; i < data.length - 1; i++) {44                 for (j = 0; j < data.length - 1 - i; j++) {45                     var dd = (data[j][p].localeCompare(data[j + 1][p], "zh"));//1---前者往後移,-1===位置不變46                     if (dd < 0) {47                         var temp = data[j];48                         data[j] = data[j + 1];49                         data[j + 1] = temp;50                     }51                 }52             }53             return data;54         }

 

  結果如下:

  1、姓名,左邊是正序(ForwardRanking(arr,"name")),右邊是反序(ReverseRanking(arr,"name"));

 

      

 

 

 

   1、sports,左邊是正序(ForwardRanking(arr,"sports")),右邊是反序(ReverseRanking(arr,"sports"));

 

       

 

 

   這是其他排序的方法,歡迎查看,歡迎給意見!

 

  JavaScript按純數字排序

  JavaScript日期排序

 

JavaScript非數字(中文)排序

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.