按自定义数组排序JSON对象

时间:2017-11-28 13:58:20

标签: javascript arrays angularjs json sorting

我有JSON对象,我想以某种方式对其进行排序,

这是我的对象

{ "you": 100, "me": 75, "foo": 116, "bar": 15 }

我希望这个对象按照['me', 'foo', 'you', 'bar']的顺序排序,对象会变成这样,

{ "me": 75, "foo": 116, "you": 100, "bar": 15 }

无论如何要实现这个目标吗?

1 个答案:

答案 0 :(得分:2)

您可以通过使用键迭代给定数组来构建新对象。

有关对象顺序的更多信息:Does JavaScript Guarantee Object Property Order?

var object = { you: 100, me: 75, foo: 116, bar: 15 },
    result = Object.assign(...['me', 'foo', 'you', 'bar'].map(k => ({ [k]: object[k] })));

console.log(result);