Skip to main content

Cómo Combinar Dos Objetos Javascript En Uno

  • Víctor Sales Agustí
  • Software

JavaScript es uno de los lenguajes de programaci n m s populares que se utiliza ampliamente para el desarrollo de aplicaciones web. Cuando se trabaja con JavaScript, a menudo es necesario combinar dos o m s objetos en uno para obtener la informaci n completa.

Hay varias formas de combinar objetos en JavaScript, pero la m s f cil es usar el m todo Object.assign(). Este m todo toma varios argumentos, donde el primer argumento es el objeto de destino y el resto son las Fuentes que deben combinarse con el objetivo.

Ejemplo de uso de Object.assign () es el siguiente:

const mergedObject = Object.assign(target, source);

  1. console.log(mergedObject); // { name: 'John Doe', age: 25 }
  2. En este ejemplo, hemos creado un objeto de destino llamado "John Doe", y un objeto de origen con una edad de 25. A continuaci n, utilizamos el m todo Object.assign () para combinar estos dos objetos y crear un nuevo mergedobject fusionado. Como resultado, obtuvimos un objeto combinado llamado "John Doe" y una edad de 25.
  3. M todos y t cnicas para combinar objetos
  4. 1. Operador spread
  5. 2. M todo Object.assign()

3. Combinaci n recursiva con lodash.merge()

4. Usando un bucle para unir

Formas de fusionar objetos en JavaScript

1. Operador spread (pulverizaci n)

2. Object.assign()

3. Enfoque recursivo

M todos y t cnicas para combinar objetos

JavaScript proporciona varios m todos para combinar dos objetos. En este art culo, veremos los m todos y t cnicas m s utilizados para combinar objetos.

1. Operador spread

El operador spread permite combinar dos objetos extendiendo sus propiedades. Sintaxis:

const obj1 = {a: 1, b: 2};

const obj2 = {c: 3, d: 4};

const newObj = {...obj1, ...obj2};

console.log(newObj);

Como resultado de la ejecuci n del c digo, se mostrar un nuevo objeto en la consola con el siguiente contenido: {a: 1, b: 2, c: 3, d: 4}.

2. M todo Object.assign()

M todo Object.assign () copia los valores de todas las propiedades enumeradas de uno o m s objetos de origen al objeto de destino. Sintaxis:

const obj1 = {a: 1, b: 2};

const obj2 = {c: 3, d: 4};

const newObj = Object.assign({}, obj1, obj2);

console.log(newObj);

El resultado de la ejecuci n de este c digo ser un nuevo objeto con el siguiente contenido: {a: 1, b: 2, c: 3, d: 4}.

3. Combinaci n recursiva con lodash.merge()

La biblioteca Lodash proporciona un m todo merge () que le permite fusionar objetos recursivamente. Sintaxis:

const _ = require('lodash');

const obj1 = {a: {b: 2}};

const obj2 = {a: {c: 3}};

const newObj = _.merge({}, obj1, obj2);

console.log(newObj);

El resultado de la ejecuci n de este c digo ser un nuevo objeto con el siguiente contenido: {a: {B: 2, c: 3}}.

4. Usando un bucle para unir

Si los objetos tienen anidamiento profundo o requisitos de Uni n espec ficos, puede usar un bucle para unir propiedades. Sintaxis:

const obj1 = {a: {b: 2}};

const obj2 = {a: {c: 3}};

const newObj = {};

for(let key in obj1) {

if(typeof obj1[key] === 'object' && typeof obj2[key] === 'object') {

newObj[key] = {...obj1[key], ...obj2[key]};

} else {

newObj[key] = obj2[key] ?? obj1[key];

}

}

console.log(newObj);

El resultado de la ejecuci n de este c digo ser  un nuevo objeto con el siguiente contenido: {a: {B: 2, c: 3}}.

Hay muchas otras t cnicas y m todos para combinar objetos en JavaScript, y la elecci n depende de los requisitos y el contexto de la tarea.

Formas de fusionar objetos en JavaScript

JavaScript proporciona varias formas de fusionar dos objetos. Considere algunos de ellos.

1. Operador spread (pulverizaci n)

El operador spread le permite rociar las propiedades de un objeto en otro. El nuevo objeto contendr todas las propiedades de ambos objetos.

const obj1 = { name: 'John' };

const obj2 = { age: 30 };

const mergedObj = { ...obj1, ...obj2 };

console.log(mergedObj); // { name: 'John', age: 30 }

2. Object.assign()

M todo Object.assign () tambi n le permite fusionar objetos. Toma uno o m s objetos de origen y devuelve un nuevo objeto que contiene las propiedades combinadas.

const obj1 = { name: 'John' };

const obj2 = { age: 30 };