JavaScript按純數字排序

來源:互聯網
上載者:User

標籤:技術分享   png   font   年齡   image   反序   log   name   其他   

 
直接上代碼:
 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         //單一的數字排序10         //console.log(arr.sort(sortDownAge));//正序11         //console.log(arr.sort(sortUpAge));//反序12 13 14         //靈活的數字多排序  15         //console.log(sortDownNumber(arr,"age"));//正序16         //console.log(sortUpNumber(arr,"age"));//反序17         //18         //console.log(sortDownNumber(arr,"number"));//正序19         //console.log(sortUpNumber(arr,"number"));//反序20 21         22         23         24         25         //單一的純數字排序,上方是正序,下方是反序26         function sortDownAge(a, b) {27             return a.age - b.age28         }29 30         function sortUpAge(a, b) {31             return b.age - a.age32         }33 34     //純數字靈活排序35         /*數字正排序36         *37         * data:對象數組38         * p:排序的參數39         *40         * */41         function sortDownNumber(data, p) {42             for (i = 0; i < data.length - 1; i++) {43                 for (j = 0; j < data.length - 1 - i; j++) {44                     if (parseFloat(data[j][p]) > parseFloat(data[j + 1][p])) {45                         var temp = data[j];46                         data[j] = data[j + 1];47                         data[j + 1] = temp;48                     }49                 }50             }51             return data;52         }53 54 55         /*數字反排序56          *57          * data:對象數組58          * p:排序的參數59          *60          * */61         function sortUpNumber(data, p) {62             for (i = 0; i < data.length - 1; i++) {63                 for (j = 0; j < data.length - 1 - i; j++) {64                     if (parseFloat(data[j][p]) < parseFloat(data[j + 1][p])) {65                         var temp = data[j];66                         data[j] = data[j + 1];67                         data[j + 1] = temp;68                     }69                 }70             }71             return data;72         }

分別顯示的結果如下:

 

  1、單一的數字排序,左側是正序(arr.sort(sortDownAge)),右側是反序(arr.sort(sortUpAge))

      

 

  2、靈活的數字多排序,左側是年齡正序(sortDownNumber(arr,"age")),右側是年齡反序(sortUpNumber(arr,"age"))

      

 

  3、靈活的數字多排序,左側是number正序(sortDownNumber(arr,"number")),右側是number反序(sortUpNumber(arr,"number"))

      

 

    

 

 

  

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

   按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.