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