【发布时间】:2019-01-08 00:06:02
【问题描述】:
我想按“用户”对象中的“名称”对下面的数组进行排序
var myArr = [
{"id":1,"user":{"name":"allen","id":101}},
{"id":2,"user":{"name":"martin","id":102}}
]
我该怎么做?
我有一种方法可以对对象数组进行排序,但我不能将它用于对象数组
这是方法:
function dynamicSort(property) {
var sortOrder = 1;
if (property[0] === "-") {
sortOrder = -1;
property = property.substr(1);
}
return function (a, b) {
var result = (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0;
return result * sortOrder;
}
}
然后我可以使用这个排序:
myArr.sort(dynamicSort("id"));
【问题讨论】:
-
@Skeevs,他需要对嵌套对象进行排序。不适用于单个对象。
标签: javascript arrays sorting javascript-objects