En este post de programación con JS vamos a ver cómo mezclar dos objetos, de modo que combinemos sus propiedades y tengamos un nuevo objeto.
Veremos dos maneras de mezclar las propiedades de un objeto con JavaScript: con el operador spread y con una función manual.
Lo que tenemos que hacer es declarar un objeto vacío, ahí almacenaremos las propiedades de los objetos que vamos a combinar. Luego recorremos cada clave de los objetos y la vamos guardando (junto con su valor) en el nuevo objeto, así de simple.
Por cierto, en caso de que haya claves repetidas se van a mantener las propiedades del segundo objeto.
Si quieres hacerlo manualmente con una función puedes hacerlo como se ve a continuación:
const combinarObjetos = (objeto1, objeto2) => {
const resultado = {};
for (const clave of Object.keys(objeto1)) {
resultado[clave] = objeto1[clave];
}
for (const clave of Object.keys(objeto2)) {
resultado[clave] = objeto2[clave];
}
return resultado;
}
Con esto puedes mezclar cualquier cantidad de objetos en JavaScript, ya que puedes combinar el resultado con otro objeto.
Una manera más elegante es usar el spread operator u operador de propagación que se representa como ...
.
Éste operador es relativamente nuevo en JS y permite varias cosas como enviar los elementos de un arreglo como argumentos a una función o combinar objetos.
El operador “desempaca” los elementos. Entonces podemos combinar dos objetos así:
const combinadoConSpread = { ...objeto1, ...objeto2 };
Es más simple y elegante. Además, podemos combinar cualquier cantidad de objetos. Recuerda que la misma regla aplica: si existen claves repetidas, se mantendrán las del último objeto.
Ya te enseñé a colocar las propiedades de dos objetos en uno solo. Ahora te mostraré el código completo. Al final puedes usar el método que tú prefieras:
El código (que se puede ejecutar en Node y en el navegador) queda así:
// https://parzibyte.me/blog
const combinarObjetos = (objeto1, objeto2) => {
const resultado = {};
for (const clave of Object.keys(objeto1)) {
resultado[clave] = objeto1[clave];
}
for (const clave of Object.keys(objeto2)) {
resultado[clave] = objeto2[clave];
}
return resultado;
}
const objeto1 = {
nombre: "Luis",
mascotas: ["Maggie", "Panqué", "Grim"]
};
const objeto2 = {
web: "https://parzibyte.me/blog",
nombre: "Parzibyte",
};
const combinado = combinarObjetos(objeto1, objeto2);
const combinadoConSpread = { ...objeto1, ...objeto2 };
console.log("Combinado con función:");
console.log(combinado);
console.log("Combinado con spread operator:");
console.log(combinadoConSpread);
Por aquí te dejo más tutoriales de JavaScript.
Hoy te voy a enseñar a agregar un salto de línea a un texto para…
Algunas impresoras térmicas ESC POS tienen un buzzer o zumbador que puede emitir sonidos, también…
En este corto tutorial de programación CSS con Tailwind vamos a ver cómo centrar un…
Hoy te voy a enseñar una aplicación web (programada con JavaScript en el lado del…
En este artículo te voy a enseñar una técnica para mejorar la calidad de las…
La API de OffscreenCanvas permite trabajar con un canvas en JavaScript sin tener que usar…
Esta web usa cookies.
Ver comentarios
Queeee..? Así de fácil? Waoooo.! Genial.😉👍