我有一个带有几个键的javascript对象,其值是对象数组.我试图将所有键/值组合成一个对象数组.所以来自
{
a: [{}, {}, {}],
b: [{}, {}, {}],
c: [{}, {}, {}]
}
Run Code Online (Sandbox Code Playgroud)
至
[{}, {}, {}, {}, {}, ...]
Run Code Online (Sandbox Code Playgroud)
我正在尝试类似的东西
Object.keys(myObject).map(key => myObject[key])
Run Code Online (Sandbox Code Playgroud)
这导致一个内部有3个数组的数组.
我也尝试过使用lodash和做
Object.keys(myObject).map(key => _.values(myObject[key]))
Run Code Online (Sandbox Code Playgroud)
这似乎导致了同样的事情.我该怎么做呢?最好是像我一样尝试而不是循环.很抱歉,如果已经提出这个问题,我不知道该如何说出问题以找到结果
您可以使用它Array.prototype.reduce来生成一个包含所有嵌套对象的数组(这里只处理一层嵌套,我不知道您想要多少)。
var values = {\n a: [{}, {}, {}],\n b: [{}, {}, {}],\n c: [{}, {}, {}]\n};\n\nObject.keys(values).reduce(function(res, key) {\n return res.concat(values[key]);\n}, []); // [{\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}]\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
2676 次 |
| 最近记录: |