I数据结构形状类似于
[{name:"kevin",major:1, minor:2}]如果我希望对这些对象进行排序,那么我将如何对这些对象进行排序,使它们--专业是有序的,而未成年人是次要的呢?
发布于 2016-02-17 19:41:26
给你:
var myData = [{
name: "kevin",
major: 1,
minor: 2
}, {
name: "bob",
major: 1,
minor: 1
}, {
name: "dave",
major: 2,
minor: 1
}, {
name: "john",
major: 2,
minor: 2
}];
var mySort = function(a, b) {
if (a.major == b.major) {
return a.minor - b.minor;
} else {
return a.major - b.major;
}
};
document.getElementById("results").innerHTML = JSON.stringify(myData.sort(mySort));<div id="results"></div>
发布于 2016-02-17 19:41:33
只需定义一个排序回调。
var myData = [{ name: "kevin", major: 1, minor: 2 }, { name: "bob", major: 1, minor: 1 }, { name: "dave", major: 2, minor: 1 }, { name: "john", major: 2, minor: 2 }];
myData.sort(function (a, b) {
return a.major - b.major || a.minor - b.minor;
});
document.write('<pre>' + JSON.stringify(myData, 0, 4) + '</pre>');
https://stackoverflow.com/questions/35466013
复制相似问题