js數組排序

1、sort函數的語法html

arrayObject.sort(sortby)數組

 

2、sort函數的說明函數

 

一、返回值爲對數組的引用。請注意,數組在原數組上進行排序,不生成副本。this

二、若是調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,說得更精確點,是按照字符編碼的順序進行排序。編碼

三、若是想按照其餘標準進行排序,就須要提供比較函數,該函數要比較兩個值,而後返回一個用於說明這兩個值的相對順序的數字。spa

四、比較函數應該具備兩個參數 a 和 b,其返回值以下:code

若 a 小於 b,在排序後的數組中 a 應該出如今 b 以前,則返回一個小於 0 的值。
若 a 等於 b,則返回 0。
若 a 大於 b,則返回一個大於 0 的值。orm

 

3、js數組的sort排序實例htm


一、按從小到大進行排序數組對象


 function f(a,b){
              return a-b;
 }
 var arr = [1,2,3,4,5,6];
 arr.sort(f);

 

二、奇數排在前面,偶數排在後面


function f(a,b)
{
    var a = a % 2;
    var b = b % 2;
    if(a==0)  return 1;
    if(b==0)  return -1;
}
var arr = [1,4,5,6,1,3,7,8];
arr.sort(f);
console.log(arr);


3、簡單對象自定義屬性排序

        var objectList = new Array();
        function Persion(name,age){
            this.name=name;
            this.age=age;
            }
        objectList.push(new Persion('jack',20));
        objectList.push(new Persion('tony',25));
        objectList.push(new Persion('stone',26));
        objectList.push(new Persion('mandy',23));

        //按年齡從小到大排序
        objectList.sort(function(a,b){
            return a.age-b.age});

        for(var i=0;i<objectList.length;i++){
            document.writeln('<br />age:'+objectList[i].age+' name:'+objectList[i].name);
            }


參考資料:js數組排序   http://www.studyofnet.com/news/1163.html

相關文章
相關標籤/搜索