2021-06-29 03:11:14
在 JavaScript 中,可以使用 flatMap 和 map 方法将嵌套数组数据扁平化为目标键值对格式。以下是具体实现步骤和代码示例:
核心思路:通过 flatMap 遍历原始数组中的每个对象,再利用 map 处理嵌套的 secondname 数组,生成扁平化的键值对对象。
代码实现:
代码解释:
flatMap 方法:遍历 data.result 数组中的每个对象(item),对每个对象执行映射操作,并将结果扁平化为一个新数组。
内部 map 方法:针对每个对象的 secondname 数组,生成一个新对象 { name: item.name, secondname: secondName },其中 secondName 是 secondname 数组中的当前元素。
结果整合:将扁平化后的数组 flattenedResult 嵌入到 { result: ... } 对象中,形成最终的目标格式。
输出结果:
简洁性:相比传统的 reduce 和 concat 组合,flatMap + map 的写法更直观,减少了中间变量的使用。
高效性:flatMap 内部优化了数组扁平化过程,避免了手动拼接数组的性能开销。
可读性:代码逻辑清晰,易于理解和维护。
通过上述方法,可以高效地将嵌套数组数据转换为所需的键值对格式。