js中arr.sort的用法
阿新 • • 發佈:2017-06-19
數組 blog tool dem 默認 tar 返回 java document
sort(sortfunction)為JS的數組對象(Array)的一個方法,提供排序功能
參數 sortFunction 為可選項,是用來確定排序原則的js函數,
這個函數有兩個參數,分別代表每次排序比較時的兩個數組項,
如果這個函數的返回值小於0 則不交換原數組中元素的位置,否則交換原數組中元素的位置。
如果這個參數被省略, 那麽元素將按照 ASCII 字符順序進行升序排列。
Demo1默認按字母排序
var arr = [‘b‘,‘cc‘,‘abc‘,‘fzj‘,‘xij‘,‘acd‘,‘yab‘]; arr.sort(); for (var i = 0; i < arr.length; i++) { document.writeln(nameArr[i]); }
結果:abc acd b cc fzj xij yab
Demo2數字排序,sort(prama)方法帶參數
//降序函數 var desc = function(x,y) { if (x > y) return -1; //返回一個小於0 的數即可 else return 1; //返回一個大於0 的數即可 } //升序函數 var asc = function(x,y) { if (x > y) return1; //返回一個大於0 的數即可 else return -1; //返回一個小於0 的數即可 } var arr2 = [4,6,4,2,7,9,0,1]; arr2.sort(desc); //降序排序 document.writeln(arr2); document.writeln("<br>"); arr2.sort(asc); //升序排序 document.writeln(arr2);
結果:
9,7,6,4,4,2,1,0
0,1,2,4,4,6,7,9
demo2的簡單算法:
var arr2 = [4,6,4,2,7,9,0,1]; arr2.sort(function(a,b){return a - b}); document.writeln(arr2); document.writeln("<br>"); arr2.sort(function(a,b){return b - a}); document.writeln(arr2);
結果:
0,1,2,4,4,6,7,9
9,7,6,4,4,2,1,0
js中arr.sort的用法