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

255
Vistas
Cómo usar el encadenamiento opcional en Node.js 12

El encadenamiento opcional ( obj?.param1?.param2 ) parece ser una gran característica y realmente quería verlo implementado y finalmente deshacerme de ifs anidados, funciones arbitrarias y demás para una operación tan simple.

Pero hay un problema, no funciona. Actualicé al Nodo 12 y sigo recibiendo un error:

 var dude = res?.param?.params[0] SyntaxError: Unexpected token '.'

o

 var dude = res.param?.params[0] SyntaxError: Unexpected token '.'

¿Cuál es el problema?

¿Necesito cambiar alguna configuración de idioma o descargar una biblioteca para habilitar esta función? ¿O simplemente aún no ha salido?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Actualmente, el encadenamiento opcional no es compatible con la versión 13 de Node.js y versiones anteriores. Será compatible con la versión 14 de Node.js y la mayoría de los navegadores, ya que se mueve a la Etapa 4. Actualmente, pocas plataformas lo admiten. Puede encontrar la lista de plataformas que admiten el encadenamiento opcional en el enlace proporcionado. Puede habilitar opcional usando la --harmony .

over 4 years ago · Santiago Trujillo Denunciar

0

La especificación para la función de encadenamiento opcional acaba de ascender a la Etapa 4 (Terminada) el 22 de diciembre de 2019 . El Nodo 12 salió antes de que la especificación fuera definitiva, y también el Nodo 13, para el caso.

De acuerdo con node.green , el encadenamiento opcional será compatible a partir del Nodo 14, pero seguirá siendo necesario el indicador --harmony . (Esto parece entrar en conflicto con la descripción de Node de la bandera --harmony ; se supone que las funciones de envío de V8 no requieren la bandera, así que no estoy seguro de qué hacer con eso). Aún así, ya sea que necesite una bandera o no, No esperaría ver la función hasta el lanzamiento de Node 14 alrededor de abril de 2020 .

Si quiere jugar con encadenamiento opcional hoy, su mejor opción es usar TypeScript (que agregó encadenamiento opcional en la versión 3.7 ) o un preprocesador como Babel .

over 4 years ago · Santiago Trujillo Denunciar

0

Pude usar nodejs v13.7.0 con el indicador --harmony.

nodo --harmony myCode.js

Dina

indefinido

indefinido

 //myCode.js const adventurer = { name: 'Alice', cat: { name: 'Dinah' } }; const catName = adventurer.cat?.name; console.log(catName); // expected output: Dinah const dogName = adventurer.dog?.name; console.log(dogName); //expected output: undefined console.log(adventurer.someNonExistentMethod?.()) //expected output: undefined
over 4 years ago · Santiago Trujillo 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