JavaScript modificar y devolver JSON nuevo

Cuando intentamos poner en prácticas ciertas prácticas funcionales como la inmutabilidad en JavaScript se nos hace complejo por el propio diseño del lenguaje. No obstante podemos navegar por rutas alternativas para lograr resultados similares, logrando un código más sólido y fiable.

Me gustaría compartir un sencillo truco para modificar un JSON y devolverlo, sin la necesidad de almacenarlo previamente en una variable.

Supongamos que disponemos de una constante con información sobre un navegador.

const info = {"navegador": "Firefox", "version": 123};

Y necesito añadir su compilación.

const newBuild = {"build": "1"};

El truco es usar Object.assign() con un JSON a modificar como primer parámetro y la nueva información como segundo.

Object.assign(info, newBuild);
// { navegador: "Firefox", version: 123, build: "1" }

¿Necesito modificar la versión a 150? Tercer parámetro.

Object.assign(info, newBuild, {"version": 150});
// { navegador: "Firefox", version: 150, build: "1" }

El orden es importante.

This work is under a Attribution-NonCommercial-NoDerivatives 4.0 International license.

Will you buy me a coffee?

You can use the terminal.

ssh customer@andros.dev -p 5555

Written by Andros Fenollosa

November 6, 2022

1 min of reading

You may also like