这段代码可以优化的地方有:

  1. 使用数组的map方法代替forEach方法,可以让代码更简洁。

  2. 避免使用可选链操作符(?.)和any类型,可以提高代码的可读性和类型安全性。

  3. 可以将外层forEach方法中的一些常量提取出来,避免重复计算。

  4. 可以使用解构赋值的方式,避免重复访问对象属性。

下面是优化后的代码:

const arr = data.flatMap((item, index2) => {
  const { diVoList = [], projectType, projectId, projectName, targetDi, actualDi } = item;
  const len = diVoList.length;
  return diVoList.map((ite, index) => {
    const { spm, department, targetDi: targetDis, actualDi: actualDis } = ite;
    return {
      serial: index2 + 1,
      projectType,
      projectId,
      projectName,
      targetDi,
      actualDi,
      spm,
      department,
      targetDis,
      actualDis,
      span: index === 0 ? len : 0,
    };
  });
});
JavaScript 代码优化:使用 map 和 解构赋值优化 forEach 循环

原文地址: http://www.cveoy.top/t/topic/n0l7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录