Tengo dos matrices:

let a = [1, 3, 5];
let b = [2, 4];

Necesito poner la segunda matriz en la primera después del segundo elemento, por lo que este es el resultado:

[1, 3, 2, 4, 5]

¿Cuál es la mejor manera de insertar una segunda matriz en la primera en es6?

Se puede resolver fácilmente usando la operación concat, pero estoy buscando una buena manera de hacerlo en es6.

-3
ruslan5t 13 ene. 2017 a las 19:22

3 respuestas

La mejor respuesta

Si desea insertar la segunda matriz en un índice específico, puede usar la función splice y el operador de propagación .

var a = [1, 3, 5];
var b = [2, 4, 6];

a.splice(2, 0, ...b);

console.log(a); // [1, 3, 2, 4, 6, 5]
4
Wiktor Bednarz 13 ene. 2017 a las 16:33

Utilice el método Array#splice con sintaxis extendida.

a.splice(2, 0, ...b)
let a = [1, 2, 5];
let b = [3, 4];

a.splice(2, 0, ...b);

console.log(a);
1
Pranav C Balan 13 ene. 2017 a las 16:44

Creo que esta es la respuesta que buscas.

    function frankenSplice(arr1, arr2, n) {

    let arr3 = [...arr2]
    arr3.splice(n,0,...arr1)
    return arr3
     }
0
Joshua Paul Aguilar 14 jul. 2018 a las 08:31