Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

110
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda