Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

318
Views
Operador ternario, atajo para devolver la condición marcada si es verdadero?

Estoy buscando para ver si hay una notación aún más corta para una notación ya relativamente compacta. Parece una pieza de sintaxis que existiría para un patrón bastante común en el código.

Aquí, el operador ternario devuelve props.initialValues.time si es verdadero y algo más si es falso:

 props.initialValues.time ? props.initialValues.time : props.startTime

Pero, ¿por qué especificar la condición verificada dos veces en este caso? Me encontré tratando de escribirlo de esta manera: (tal vez lo he visto en otro lugar hace un tiempo o algo así)

 props.initialValues.time ? : props.startTime

Lo que quiero decir es que devuelva la condición marcada si es verdadera; de lo contrario, devuelva props.startTime. ¿Existe una sintaxis similar para este propósito en JS o en cualquier otro idioma? Verificado en Google con poca suerte, tal vez estoy redactando mi pregunta incorrectamente, o tal vez en realidad no existe.

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

|| se puede usar como atajo: se evaluará hacia el lado izquierdo si el lado izquierdo es verdadero, y hacia el lado derecho de lo contrario.

 props.initialValues.time || startTime

En la sintaxis moderna, sería preferible usar ?? si el lado izquierdo será específicamente indefinido o nulo :

 props.initialValues.time ?? startTime
about 4 years ago · Juan Pablo Isaza Report

0

Si está verificando si la propiedad existe, puede usar el operador de fusión nulo:

 props.initialValues.time ?? props.startTime 

 let a = 5 let b = 6 console.log(a ?? b) console.log(a ? a : b)

about 4 years ago · Juan Pablo Isaza Report

0

a ? a : b se puede cambiar a a || b

a ? b : a se puede cambiar a a && b

Entonces para tu caso:

 props.initialValues.time || props.startTime
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!