日期:2014-05-16  浏览次数:20357 次

jquery 二维数组多条件排序
var array=[[1,2,10],[1,9,8],[5,10,2],[8,10,1],[8,2,7]]

例如上例二维数组,先按array[0]排序,当相同时再按array[2]排序。

我在网上找了好多,没有找到可以用的。请高手帮助
------解决方案--------------------
var array = [[1,2,10],[1,9,8],[8,2,7],[8,10,1],[5,10,2]];
//console.log(array)
array.sort(function(a,b){

if(a[0] - b[0] < 0){
return a[0] - b[0]
}else if(a[0] == b[0]){
return a[2] - b[2]
}else{
return a[0] - b[0]
}
});

------解决方案--------------------
簡化一下

var array = [[1,2,10],[1,9,8],[8,2,7],[8,10,1],[5,10,2]];
array.sort(function(a, b){  
if(a[0] == b[0]){
return a[2] - b[2];
}
return a[0] - b[0];
});
console.log(array);