# Combined Different Array with Fixed Length

## Issue

If my Array1 is

``````Array1 = [1,2,3,4,5,6,7,8,9,10]
``````

the Result should be the same as Combined_Array= [1,2,3,4,5,6,7,8,9,10]

if i got

``````Array2=[11,12,13,14,15,16,17,18,19,20]
``````

the Resut should be Combined_Array =[1,2,3,4,5,11,12,13,14,15]

and if again i got

``````Array3=[21,22,23,24,25,26,27,28,19,30]
``````

The Combined_array = [1,2,3,11,12,13,21,22,23,24]

and so on , Doesnt matter how much Array’s i want that it should give me a Combined_Array from all the different Array with Fixed Length

Need a Function to make this work .

## Solution

You could take a closure over the collected arrays and retuen an array of the parts which are difined by the count of arrays.

``````const
getCombined = (a) => {
const allArrays = [];

return (b => {
allArrays.push(b);
let i = 0,
p = Math.floor(10 / allArrays.length),
result = [];

while (i < allArrays.length) result.push(...allArrays[i++].slice(0, p));
while (result.length < 10) result.push(allArrays[allArrays.length - 1][p++]);
return result;
});
};

var c = [],