Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

218
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar

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 Denunciar

0

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

 boolean === !!boolean
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda