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

108
Views
La declaración ternaria JS más extraña que he visto

Así que estoy trabajando en este proyecto, que tiene un código que escribió otra persona, y encontré esta operación ternaria de JavaScript para asignar una variable. No están disponibles para que yo pregunte al respecto. Entiendo la primera mitad, pero...

variable = statement ? option1 : option2 ? option2 : option1

sería simple para mí si fuera solo

variable = statement ? option1 : option2

pero la segunda mitad de la declaración es simplemente desconcertante para mí. ¿Puede alguien explicar qué está pasando aquí?

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

0

variable = statement ? option1 : option2 ? option2 : option1

es, espaciado:

 variable = statement ? option1 : option2 ? option2 : option1

Si declaración, opción1.

De lo contrario, si la opción2, la opción2.

De lo contrario, opción 1.

Otra forma de hacerlo es:

 if (statement) { variable = option1; } else if (option2) { variable = option2; } else { variable = option1; }

Una forma más clara de implementar la misma lógica sería:

 if (!statement && option2) { variable = option2; } else { variable = option1; }

o

 variable = (!statement && option2) ? option2 : option1;
about 4 years ago · Juan Pablo Isaza Report

0

No es el mísmo.
variable = statement ? option1 : option2 ? option2 : option1
sería el equivalente de -

 if (statement) { variable = option1; } else { if (option2) { variable = option2; } else { variable = option1; } }

Mientras
variable = statement ? option1 : option2
sería equivalente a -

 if (statement) { variable = option1; } else { variable = option2; }

Como se puede ver más claramente aquí, en el segundo ejemplo, si la statement es false , la variable siempre será igual a la option2 .
Pero en el primer ejemplo, aún puede ser igual a la option1 en algunos casos.

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!