关于根据动态数量的对象的某属性的数组数量呈乘机式增长的数据处理

adta是原始数组,currentIndex默认是零,currentObject初始对象,result处理生成的结果

javascript 复制代码
function generateObjects(data, currentIndex, currentObject, result) {
    if (currentIndex === data.length) {
      result.push(currentObject);
      return;
    }

    const currentCode = data[currentIndex].code;
    const currentSelect = data[currentIndex].select;

    for (let i = 0; i < currentSelect.length; i++) {
      const newObject = { ...currentObject };
      newObject[currentCode] = currentSelect[i];
      generateObjects(data, currentIndex + 1, newObject, result);
    }
  }

  const result = [];
  generateObjects(data, 0, {}, result);
相关推荐
MurphyChen10 分钟前
前端请求进化史 :从 Form 到 Server Actions 🚀
前端·javascript·面试
magic 2451 小时前
ES6变量声明:let、var、const全面解析
前端·javascript·ecmascript·es6
好_快2 小时前
Lodash源码阅读-dropWhile
前端·javascript·源码阅读
好_快2 小时前
Lodash源码阅读-dropRightWhile
前端·javascript·源码阅读
请叫我欧皇i2 小时前
vue2使用ezuikit-js播放萤石视频
开发语言·javascript·ecmascript
IT专家-大狗3 小时前
Google Chrome Canary版官方下载及安装教程【适用于开发者与进阶用户】
开发语言·javascript·chrome·ecmascript
喜欢便码7 小时前
JS小练习0.1——弹出姓名
java·前端·javascript
chase。7 小时前
【学习笔记】MeshCat: 基于three.js的远程可控3D可视化工具
javascript·笔记·学习
千野竹之卫8 小时前
3D珠宝渲染用什么软件比较好?渲染100邀请码1a12
开发语言·前端·javascript·3d·3dsmax
sunbyte8 小时前
初识 Three.js:开启你的 Web 3D 世界 ✨
前端·javascript·3d