javascript - 有人可以帮助我使用这种从某些值拆分数组的算法吗?

标签 javascript arrays algorithm split automation

我正在尝试自动化我的工作,我正在将一个大数组分解成更小的数组,如下所示:

function splitArray(arr, firstbreak, secondBreak, thirdBreak, fourthBreak) {
  var split1 = arr.slice(0, firstbreak);
  var split2 = arr.slice(firstbreak, firstbreak + secondBreak);
  var split3 = arr.slice(firstbreak + secondBreak, firstbreak + secondBreak + thirdBreak);
  var split4 = arr.slice(firstbreak + secondBreak + thirdBreak, firstbreak + secondBreak + thirdBreak + fourthBreak);

  console.log(split1); //[1,2,3]
  console.log(split2); //[4,5,6,7]
  console.log(split3); //[8]
  console.log(split4); //[9,10]
}


splitArray([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2, 4, 3, 1, 2)

我怎样才能自动化这个?我尝试了一个 for 循环,但有点卡住了我似乎无法获得重复的公式......

最佳答案

您可以收集长度并映射零件数组。

function splitArray(array, ...lengths) {
    return lengths.map((i => l => array.slice(i, i += l))(0));
}

console.log(splitArray([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2, 4, 3, 1, 2))
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 有人可以帮助我使用这种从某些值拆分数组的算法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62858363/

相关文章:

algorithm - 什么人工智能最适合学习一个领域

c++ - 使用 sprintf 分配给以字符指针作为输入之一的字符数组时缓冲区溢出

arrays - 通过在值中分配一个数组在哈希中添加键值对=>不能将未定义的值用作ARRAY引用

javascript - 在输入和输出中添加逗号

javascript - 显示多个文件上传的进度 Jquery/Ajax

python - 高效的数组连接

java - 如何获取给定数组中最大值出现的次数

algorithm - paranthesized 字符串并行处理的有效性

javascript - 创建自定义滚动事件,与用户事件区分开来?

javascript - Jquery "select all"复选框