La destructuración en Javascript consiste en extraer los valores de un array o las propiedades de un objeto en distintas variables. Y es útil si deseas usar aquellos valores que solo necesites.

Esta forma de trabajar vino con la llegada de ES6+ de javascript.

Destructuración de objetos en Javascript

Para destructurar un objeto declaras los valores que deseas utilizar entre el corchete ({}), por ejemplo const { atributo1, atributo2,... } = objeto;.

// Sin Destructuración de objetos
const person = {
  name: "Luis",
  age: 22,
  country: "Vzl",
};
console.log(person.name, person.age, person.country);

const nombre = person.name;
const edad = person.age;
const pais = person.country;

console.log(nombre, edad, pais);

// Destructuración de objetos
const { name, age, country } = person;
console.log(name, age, country);

Cambiar el nombre de las variables con destructuración de objetos

Puedes cambiar la propiedad del objeto utilizando la siguiente sintaxis: const { atributo: nuevoAtributo } = objeto;.

const pokemon = {
  name: "Zoroak",
  lvl: 22,
  region: "Unova",
};

//Cambio de  nombre en las variables
const { name: pokemonName, lvl: pokemonLvl, region: pokemonRegion } = pokemon;
console.log(pokemonName, pokemonLvl, pokemonRegion);

Destructuración en parámetros de una función

Puedes utilizar la desestructuración en los parámetros para obtener los valores directamente si envías un objeto como argumento en la invocación a la declaración de una función,

Debes tener en cuenta que el nombre debe ser igual a la propiedad del objeto. Recuerda que es una ayuda al momento de utilizar los atributos que solo necesites del objeto.

const pokemon = {
  name: "Zoroak",
  lvl: 22,
  region: "Unova",
};

function callPokemon({ name, lvl, region }) {
  console.log(name, lvl, region);
};

callPokemon(pokemon);

Destructuración de arrays en Javascript

La destructuración de arrays extrae los valores de un array en variables utilizando la misma posición del array. La sintaxis es similar a la destructuración de objetos: const [var1, var2,...] = array;.

const gatos = [ "Michi", "Michigun", "Michil", "Michael"];
const [michi, michigun, michil, michael] = gatos;

console.log(michi, michigun, michil, michael);

Desestructuración para valores retornados de una función

Al destructurar una función que retorna un array, puedes guardarlo en una variable. Es útil para separar esos valores de manera legible.

Este código sería una simulación de cómo se aplica la destructuración en useState de React

function useState(value){
	return [value, updateValue()];
}

//Sin desestructuración
const estado = useState(3)
const valor = estado[0]
const actualizador = estado[1]

//Con desestructuración
const [valor, actualizador] = useState(3)

Recomendaciones

Hay trucos que puedes utilizar en la destructuración de arrays, sin embargo no es la vía más recomendable a usar.

Por ejemplo, si necesitas un elemento en cierta posición, puedes utilizar la separación por comas para identificar la variable que necesitas.

const array = [ 1, 2, 3, 4, 5 ]
const [ ,,,,  cinco ] = array

console.log(cinco) // 5

Como los arrays son un tipo de objeto, puedes utilizar la desestructuración de objetos mediante el índice y utilizando un nombre para la variable.

const array = [ 1, 2, 3, 4, 5 ]
const {4: cinco} = array

console.log(cinco) // 5

¿Qué te ha parecido? ¿Has utilizado alguna vez la destructuración en Javascript? Cuéntame los detalles en los comentarios.

No olvides compartir y seguirme en redes sociales para más contenido.


Avatar de darkusphantom

Sigueme en mis redes sociales para más contenido


darkusphantom Desarrollo Web, Programación

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *