我在JS中有一个结构如下的对象:
[{
"x": 2.31,
"y": 0.538
},
{
"x": 7.07,
"y": 0.469
},
{
"x": 6.02,
"y": 0.469
},
{
"x": 2.18,
"y": 0.458
}]
我需要按每个元素中的键之一排序(按x排序)。结果将如下所示:
[{
"x": 2.18,
"y": 0.458
},
{
"x": 2.31,
"y": 0.538
},
{
"x": 6.02,
"y": 0.469
},
{
"x": 7.07,
"y": 0.469
}]
以下方法不适用于上述结构:
var sorted = [];
for(var key in dict) {
sorted[sorted.length] = key;
}
sorted.sort();
以下内容也不是:
function sortObject(o) {
return Object.keys(o).sort().reduce((r, k) => (r[k] = o[k], r), {});
}
最佳答案
实现自定义排序方法。
var arr = [{ "x": 2.31, "y": 0.538 }, { "x": 7.07, "y": 0.469 }, { "x": 6.02, "y": 0.469 }, { "x": 2.18, "y": 0.458 }]
arr.sort((a,b) => a.x - b.x)
console.log(arr);
关于javascript - 通过每个元素中的键之一对JS中的对象进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48375224/