这个问题在这里已有答案:
- 对JavaScript对象数组进行排序 25个答案
6115
2018-03-24 00:46
起源
答案:
您只需要将比较器传递给sort函数
function compare(a,b) {
if (a.attr < b.attr)
return -1;
if (a.attr > b.attr)
return 1;
return 0;
}
canvasObjects.sort(compare);
或者内联
canvasObjects.sort(function(a,b) {return (a.attr > b.attr) ? 1 : ((b.attr > a.attr) ? -1 : 0);} );
看到这个 POST
13
2018-03-24 00:59
尝试在这里发布的其他答案,但我发现以下工作最好。
canvasObjects.sort(function(a,b) { return parseFloat(a.z) - parseFloat(b.z) } );
3
2018-03-24 01:27
将匿名函数发送到sort方法,该方法返回属性“z”的减法
var arr = [{z:2},{z:4},{z:5},{z:1},{z:3}];
arr.sort(function(a,b) {return a.z - b.z});
在上面将数字放入z中以订购1,2,3,4,5。要颠倒顺序,请返回“b.z - a.z”。
0
2018-03-24 01:06