1
我有对象的这样的阵列的对象的阵列:排序由2个属性
[ {x: 1, y: 4}, {x: 1, y: 2}, {x: 1, y: 3},
{x: 3, y: 4}, {x: 3, y: 2}, {x: 3, y: 9},
{x: 2, y: 5}, {x: 1, y: 0}, {x: 1, y: 2} ]
和我想是这样排序它:
[ {x: 1, y: 2}, {x: 1, y: 3}, {x: 1, y: 4},
{x: 2, y: 0}, {x: 2, y: 2}, {x: 2, y: 5},
{x: 3, y: 2}, {x: 3, y: 4}, {x: 3, y: 9} ]
所以规则是:数组必须先由x
属性排序,然后由y
属性排序必须遵守第一个排序规则。
我该怎么做?
我想:
array.sort(function(a, b){
var elema = a["x"] ;
var elemb = b["x"] ;
if (elema < elemb)
return -1;
if (elema > elemb)
return 1;
return 0;
});
array.sort(function(a, b){
var elema = a["y"] ;
var elemb = b["y"] ;
if (elema < elemb)
return -1;
if (elema > elemb)
return 1;
return 0;
});
,但它不能正常工作。
谢谢