Introducción
Hoy veremos cómo crear un arreglo a partir de otro en Javascript. Explicado con otras palabras, copiaremos, a un nuevo arreglo, otro arreglo. Es como copiar un arreglo, o crear uno a partir de otro.
Con ES6
El nuevo estándar provee un nuevo método, aunque no es soportado por todos los navegadores.
Lo único que tenemos que utilizar es Array.from, que crea un arreglo a partir de otro; como se ve en el siguiente ejemplo:
let arreglo = ["perro", "gato", "koala"];
let otroArreglo = Array.from(arreglo);
console.log(otroArreglo); // Imprime ["perro", "gato", "koala"]
De este modo creamos una nueva copia, eliminando las referencias al arreglo original. Si deseamos utilizar este método incluso en versiones anteriores, podemos utilizar un polyfill que se puede encontrar en el sitio de Mozilla: https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Array/from
Con versiones anteriores a ES6
Este es el método que necesitaremos si no queremos utilizar un polyfill como vimos arriba. Es compatible con versiones anteriores.
var arreglo = ["Rebel yell", "Dancing with myself"];
var otroArreglo = arreglo.slice();
console.log(otroArreglo); // Imprime ["Rebel yell", "Dancing with myself"]
Igualmente eliminamos las referencias al otro arreglo, y creamos una nueva y limpia copia del original.