Menu
Coddy logo textTech

Desestructuración de Arrays

Parte de la sección Lógica y Flujo del Journey de JavaScript de Coddy — lección 47 de 65.

La desestructuración de arreglos es una forma conveniente de extraer múltiples valores de un arreglo y asignarlos a variables en una sola sentencia. Utiliza una sintaxis que refleja la estructura de un literal de arreglo.

Sintaxis básica:

const [a, b, c] = [1, 2, 3];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3

Puedes omitir elementos:

const [a, , c] = [1, 2, 3];
console.log(a); // 1
console.log(c); // 3

Puedes usar parámetros rest para capturar los elementos restantes:

const [a, ...rest] = [1, 2, 3, 4, 5];
console.log(a);    // 1
console.log(rest); // [2, 3, 4, 5]

Puedes proporcionar valores predeterminados:

const [a, b, c = 3] = [1, 2];
console.log(c); // 3
challenge icon

Desafío

Fácil

Crea una función llamada analyzeArray que reciba un array como argumento. La función debe utilizar la desestructuración de arrays para extraer el primer, segundo y último elemento del array. Debe devolver un objeto con las siguientes propiedades:

  • first: El primer elemento del array
  • second: El segundo elemento del array
  • last: El último elemento del array
  • restLength: El número de elementos restantes en el array

Si alguno de estos elementos no existe, utiliza valores por defecto de null.

Hoja de referencia

La desestructuración de arreglos extrae múltiples valores de un arreglo y los asigna a variables en una sola sentencia:

const [a, b, c] = [1, 2, 3];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3

Omite elementos dejando espacios vacíos:

const [a, , c] = [1, 2, 3];
console.log(a); // 1
console.log(c); // 3

Usa parámetros rest para capturar los elementos restantes:

const [a, ...rest] = [1, 2, 3, 4, 5];
console.log(a);    // 1
console.log(rest); // [2, 3, 4, 5]

Proporciona valores predeterminados para los elementos faltantes:

const [a, b, c = 3] = [1, 2];
console.log(c); // 3

Pruébalo tú mismo

function analyzeArray(arr) {
  // Escribe tu código aquí
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo