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

221
Visualizações
Javascript: usando "!!" en contexto booleano

¿Hay alguna razón para usar !!someValue (que es equivalente a Boolean(someValue) ) en un contexto booleano ? En otras palabras, en situaciones como if (someValue) ... , ¿tiene sentido escribir if (!!someValue) ... ?

Me duele la vista y creo que es redundante, pero quiero verificar que no haya casos extremos que lo requieran, porque encontré una base de código donde esta parece ser la forma predeterminada de verificar la veracidad.

Aclaración: sí, en el caso general !!someValue convertirá someValue en un booleano; Me refiero a contextos en los que el tiempo de ejecución convertirá automáticamente someValue en true o false .

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

0

Esa es una forma útil de convertir cualquier tipo de datos en booleanos; El sinónimo exacto sería:

 Boolean(someValue)

Algunos prefieren el 'doble golpe' por ser más preciso, mientras que otros prefieren la conversión clásica con Boolean(someValue) para una mejor legibilidad.

Entonces, volviendo a su pregunta, lo más probable es que sea redundante en las condiciones, pero puede ser útil cuando se necesita una conversión de cualquier tipo a booleano.

about 4 years ago · Juan Pablo Isaza Relatório

0

No puedo decir que sepa por qué alguien confiaría en verificar directamente los booleanos en lugar de en la veracidad, ¡pero hay al menos un escenario en el que la veracidad es diferente a la coerción con !! .

 console.log([] == false); // true console.log(!![] == false); // false if([]) { console.log(true); } // true if([] == false) { console.log(true); } // true if(!![] == false) { console.log(true); } else { console.log(false); } // false

about 4 years ago · Juan Pablo Isaza Relatório

0

Nunca necesita usar un doble golpe para convertir un valor booleano a booleano.

 boolean === !!boolean
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