【发布时间】:2011-09-02 01:32:43
【问题描述】:
grouperArray.sort(function (a, b) {
var aSize = a.gsize;
var bSize = b.gsize;
var aLow = a.glow;
var bLow = b.glow;
console.log(aLow + " | " + bLow);
return (aSize < bSize) ? -1 : (aSize > bSize) ? 1 : 0;
});
此代码按gsize 对数组进行排序,从小到大。
如何将其更改为首先按gsize 排序,然后按glow?
【问题讨论】:
-
排序功能对正数、负数或零结果作出反应。所以你可以写:“return aSize - bSize”。这将是更简单易读的代码。
-
顶部answer,压缩:按
col0然后col1(升序)排序对象数组:myArray.sort(function(a,b){return a.col0-b.col0||a.col1-b.col1});替代示例:排序数组按索引 #0 排列的数组,然后是 #2,然后是 #1(降序):myArray.sort(function(a,b){return b[0]-a[0]||b[2]-a[2]||b[1]-a[1]});
标签: javascript arrays sorting