Не совсем понятно, как вы хотите разделить выходные данные по частям между двумя массивами, но вы можете получить большую часть пути, используя ядро JavaScript Массив slice()
метод :
function chunk(arr, n) {
var a=[], i;
for (i=0; i<arr.length; i += n) {
a.push(arr.slice(i, i+n));
}
return a;
}
var a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
chunk(a, 2) # => [[1,2], [3,4], [5,6], [7,8], [9,10], [11,12]]
chunk(a, 3) # => [[1,2,3], [4,5,6], [7,8,9], [10,11,12]]
chunk(a, 5) # => [[1,2,3,4,5], [6,7,8,9,10], [11,12]]
Вот как вы можете поместить эти результаты в два массива, точно по вашему вопросу:
function chunk2(arr, n) {
var a1=[], a2=[], a=a1, len=arr.length, i;
for (i=0; i<len; i+=n, a=(a===a1?a2:a1)) {
a.push(arr.slice(i, i+n));
}
return [a1, a2];
}
var a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var x = chunk2(a, 2);
x[0]; // => [[1,2], [5,6], [9,10]]
x[1]; // => [[3,4], [7,8], [11,12]]
x = chunk2(a, 3);
x[0]; // => [[1,2,3], [7,8,9]]
x[1]; // => [[4,5,6], [10,11,12]]