Vla*_*gos 3 javascript arrays algorithm automation split
我正在尝试自动化我的工作,我正在将一个大数组分解成更小的数组,如下所示:
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)Run Code Online (Sandbox Code Playgroud)
我怎样才能自动化这个?我尝试了一个 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))Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper { max-height: 100% !important; top: 0; }Run Code Online (Sandbox Code Playgroud)