Comprimir dos arrays en JavaScript

Anika Tabassum Era 15 febrero 2024
  1. Use el método map() para comprimir dos arrays en JavaScript
  2. Use el método Array.from() para comprimir dos arrays en JavaScript
  3. Utilice el método Array.prototype.fill() para comprimir dos arrays
Comprimir dos arrays en JavaScript

JavaScript tiene el método map() para comprimir dos arrays de cierta longitud. Pero si las dos arrays correspondientes no coinciden con la longitud de cada una, entonces el array de longitud mínima imprime undefined como su coincidencia.

Aquí, junto con el método map(), veremos una demostración del método Array.form() y también del método Array.prototype.fill(), que tiene una declaración explícita de qué hacer cuando las longitudes del array no coinciden.

Use el método map() para comprimir dos arrays en JavaScript

La función map() toma una función de devolución de llamada que llamará a los elementos del array x y los mapeará con los elementos del array y. Esta forma simple de cerrar la cremallera también es fácil de entender.

Fragmento de código:

var x = [1, 2, 3];
var y = ['10', '20', '30'];
var z = x.map(function(e, i) {
  return [e, y[i]];
});
console.log(z);

Producción:

Utilice el método map para comprimir dos arrays

Use el método Array.from() para comprimir dos arrays en JavaScript

En la instancia del método Array.from(), tendremos dos arrays y las pasaremos en una función de flecha. La función primero hará coincidir la longitud y luego mapeará los elementos de dos arrays diferentes. Además, cuando se encuentra que falta algún elemento, el mapa correspondiente imprimirá undefined para eso.

Fragmento de código:

var x = [1, 2, 3, 4];
var y = ['10', '20', '30'];
var zip = (x, y) =>
    Array.from(Array(Math.max(x.length, y.length)), (_, i) => [x[i], y[i]]);
console.log(zip(x, y));

Producción:

Utilice el método Array.from para comprimir dos arrays

Utilice el método Array.prototype.fill() para comprimir dos arrays

El método Array.prototype.fill() funciona de manera similar al método Array.from() y genera los resultados esperados.

Fragmento de código:

var x = [1, 2, 3];
var y = ['10', '20', '30', '40'];
const zip = (x, y) =>
    Array(Math.max(x.length, y.length)).fill().map((_, i) => [x[i], y[i]]);
console.log(zip(x, y));

Producción:

Utilice el método Array_prototype_fill para comprimir dos arrays

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Artículo relacionado - JavaScript Array