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?

Comments

There are no comments yet.

Written by Andros Fenollosa

November 6, 2022

1 min of reading

You may also like

Visitors in real time

You are alone: 🐱