ic3 - 8 months ago 47

Javascript Question

What is the more efficient way to insert an array inside another array.

`a1 = [1,2,3,4,5];`

a2 = [21,22];

newArray - a1.insertAt(2,a2) -> [1,2, 21,22, 3,4,5];

Iterating a2 using splice looks a bit awfull from a performance point of view if a2 array is large.

Thanks.

Answer

You can use `splice`

combined with some `apply`

trickery:

```
a1 = [1,2,3,4,5];
a2 = [21,22];
a1.splice.apply(a1, [2, 0].concat(a2));
console.log(a1); // [1, 2, 21, 22, 3, 4, 5];
```