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

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);
相关推荐
程序猿的程9 分钟前
Stock写给前端的股票行情 SDK: stock-sdk,终于不用再求后端帮忙了
前端·javascript·node.js
用户新11 分钟前
V8引擎 精品漫游指南 -解析篇 语法解析 AST 作用域 闭包 字节码 优化 一文通关
前端·javascript
社恐的下水道蟑螂1 小时前
深入理解 React 中的 Props:组件通信的桥梁
前端·javascript·react.js
凌览1 小时前
2025年,我和AI合伙开发了四款小工具
前端·javascript·后端
A24207349301 小时前
深入浅出JS事件:从基础原理到实战进阶全解析
开发语言·前端·javascript
疯狂踩坑人2 小时前
【Nodejs】Http异步编程从EventEmitter到AsyncIterator和Stream
前端·javascript·node.js
烧冻鸡翅QAQ2 小时前
从0开始的游戏编程——开发前的编程语言准备(JAVAScript)
开发语言·javascript·游戏
软弹2 小时前
Vue2 - Dep到底是什么?如何简单快速理解Dep组件
前端·javascript·vue.js
小笔学长2 小时前
事件委托:优化事件处理性能
javascript·性能优化·项目实战·前端开发·事件委托
白兰地空瓶2 小时前
告别 add(1, 2)!通过 JS 柯里化,让你的代码更加优雅
javascript·面试