考虑使用以下json
[
{'key1': { ... }},
{'key2': { ... }},
{'key3': { ... }}
]
我想以一种优雅的方式提取这些对象的密钥,以下代码可以正常工作,但是对我来说似乎很丑。
let result = objects.map(o => Object.keys(o))[0]
最后的[0]
是因为返回的值是一个数组数组
答案 0 :(得分:0)
一个数组只能保存值,对象保存键/值对。在实际操作数据之前,请不要忘记使用JSON.parse(json)
。
我猜你需要一些类似的东西:
const list = [
{1: "one"},
{2: "two"},
{3: "three"}
];
答案 1 :(得分:0)
我编辑了您的JSON。
const data = [
{ 'key2': { }} ,
{'key1': { }},
{'key3': { }}
];
const result = [].concat.apply([], data.map(Object.keys));
console.log(result);
答案 2 :(得分:0)
您可以使用.concat()
和.map()
方法来获得所需的结果:
let data = [
{'key1': { }},
{'key2': { }},
{'key3': { }}
];
let result = [].concat(...data.map(Object.keys));
console.log(result);
参考: