如何将现有指定结构的数组转换为目标二维数组结构?
数组结构转换实现方案
实现思路
- 遍历原始数组的每一个顶层元素
- 提取顶层元素的
level1_label字段作为子数组第一个元素 - 提取
data数组中对应元素的count字段作为子数组第二个元素 - 提取
data数组中对应元素的level2_label字段作为子数组第三个元素
代码实现(JavaScript版本)
// 原始数组 const originArr = [{"level1_label":"Branch 1","data":[{"count":"3","level2_label":"2021-11-11"}]},{"level1_label":"branch 2","data":[{"count":"1","level2_label":"2021-11-25"}]}]; // 转换逻辑(适配示例场景:每个顶层元素的data数组仅含1个元素) const targetArr = originArr.map(item => [ item.level1_label, item.data[0].count, // 若需要日期对象而非字符串,可替换为 new Date(item.data[0].level2_label) item.data[0].level2_label ]); // 兼容data数组含多个元素的通用版本 // const targetArr = originArr.flatMap(item => { // return item.data.map(dataItem => [ // item.level1_label, // dataItem.count, // dataItem.level2_label // ]) // })
输出验证
打印targetArr即可得到目标结构:
[ ['Branch 1', '3', '2021-11-11'], ['branch 2', '1', '2021-11-25'] ]
内容的提问来源于stack exchange,提问作者Lovitha
相关产品推荐
相关产品推荐

