数组拆分重组
获取到的数组格式为:
let arr = [
  {
    data: [{ num: "111" }, { num: "222" }, { num: "333" }],
    name: "张三",
  },
  {
    data: [{ num: "444" }, { num: "555" }],
    name: "李四",
  },
  {
    data: [{ num: "777" }],
    name: "王五",
  },
];
期望数据格式:
[{"num":"111","name":"张三"},{"num":"222","name":"张三"},{"num":"333","name":"张三"},{"num":"444","name":"李四"},{"num":"555","name":"李四"},{"num":"777","name":"王五"}]
用下面方法改造数组格式:
getList() {
  let list = [];
  let arr = [
    {
      data: [{ num: "111" }, { num: "222" }, { num: "333" }],
      name: "张三",
    },
    {
      data: [{ num: "444" }, { num: "555" }],
      name: "李四",
    },
    {
      data: [{ num: "777" }],
      name: "王五",
    },
  ];
  let tempArr = [];
  for (let i = 0; i < arr.length; i++) {
    let arrData = arr[i].data;
    if (arrData != undefined && arrData != "" && arrData != null) {
      for (let j = 0; j < arrData.length; j++) {
        arrData[j].name = arr[i].name;
        // arrData有数据的,取出数据并拼接
        tempArr.push(...arrData);
      }
    } else {
      // arrData无数据的,赋默认值
      tempArr.push(arr[i]);
    }
  }
  // 去重
  list = [...new Set(tempArr)];
  console.log("list", list);
},


 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号