Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

159
Vistas
Asignación de objetos anidados en Node.js

Supongamos que tengo un objeto ( baz ) de contenido variable. ¿Cómo puedo asignar un subobjeto ( foo ) con una clave ( baz ) a ese objeto en una línea?


Ejemplos:

 var baz = {} baz.foo.bar = 1; console.assert(baz === { foo: { bar: 1 } });

(o, en el caso de que foo ya esté definido)

 var baz = { foo: { 1: "b" } }; baz.foo.bar = 1; console.assert(baz === { foo: { 1: "b", bar: 2 } });
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Es posible poner todo en una línea, aunque personalmente no lo recomendaría. Técnicamente estás haciendo dos cosas bastante diferentes:

  • Asigne un objeto como propiedad si el objeto aún no existe
  • Asigne una propiedad si el objeto ya existe, mutando el objeto existente

Puede asignar baz.foo o el objeto vacío a baz.foo y luego asignar el valor de la propiedad de la bar al objeto resultante:

 const baz = {}; (baz.foo ??= {}).bar = 1; console.log(baz.foo.bar); const baz2 = {}; (baz2.foo ??= {}).bar = 1; console.log(baz2.foo.bar);

preferiría

 // Create the object if it doesn't exist yet baz.foo ??= {}; // Assign the new nested value baz.foo.bar = 1;

La legibilidad del código es más importante que jugar al golf en la mayoría de los casos.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Para el primer caso:

baz.foo = {bar :1}

Y tu código funciona para el segundo caso.

(Tenga en cuenta que el siguiente código genera falso:

 a = {b:1} console.log(a==={b:1})

)

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda