javascript - 如何在javascript中获取子数组的元素数组
问题描述
我有一个对象数组
[
{name: 'hello', children: [{name: 'a'}, {name: 'b'}],
{name: 'world', children: [{name: 'c'}, {name: 'd'}],
]
使用数组方法将这个数组变成这个数组的最有效方法是什么?
[{name: 'a'}, {name: 'b'}, {name: 'c'}, {name: 'd'}]
我试过使用 map 和 filter 但子元素仍然是块。提前致谢。
解决方案
您可以使用reduce和解构数组来实现此结果。
const arr = [
{ name: "hello", children: [{ name: "a" }, { name: "b" }] },
{ name: "world", children: [{ name: "c" }, { name: "d" }] },
];
const result = arr.reduce((acc, { children }) => {
return [...acc, ...children];
}, []);
console.log(result);
推荐阅读
- promise - 如何仅导入(使用 webpack)bluebird.js 的核心?
- ruby - ruby - 在代码中构造转义命令
- c# - 将 Cefsharp 屏幕外转换为 winform
- android - 离子,科尔多瓦无法合并dex
- jenkins - 如何在并行詹金斯管道中生成聚合的宁静测试报告
- ruby - 从字符串中获取时间(以秒为单位)并添加到当前时间?
- influxdb - influxdb 查询 5 个最高 cpu 使用率
- c# - MVC + WebApi。授权和认证
- encryption - javacardx AES 加密不等于 javax AES 解密
- mysql - Oracle 中是否有与 WITH 关键字等效的 MySQL