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

127
Visualizações
Why does assignment with help from ternary operator doesn't work as expected in JS?
var a = 0;
var param = 'add';
while(a < 50){
    console.log(a); //prints out values from 0 to 49
    if(param === 'add'){
        a = a + 1;
    }else{
        a = a - 1;
    }
}

While being very simple and doing its job, I would like to make this code shorter

while(a < 50){
    console.log(a);
    a = a + (param === 'add')? 1 : -1;
}

But a never grows and stays 1. Could anyone explain such behavior?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

The expression is evaluated as

a = (a + (param === 'add')) ? 1 : -1;

which boils down to

a = 1;

You may solve this by writing

a = a + ((param === 'add') ? 1 : -1);

or even shorter:

a += (param === 'add') ? 1 : -1;
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