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

328
Visualizações
Convert truthy or falsy to an explicit boolean, i.e. to True or False

I have a variable. Let's call it toto.

This toto can be set to undefined, null, a string, or an object.

I would like to check if toto is set to a data, which means set to a string or an object, and neither undefined nor null, and set corresponding boolean value in another variable.

I thought of the syntax !!, that would look like this:

var tata = !!toto; // tata would be set to true or false, whatever toto is.

The first ! would be set to false if toto is undefined or null and true else, and the second one would invert it.

But it looks a little bit odd. So is there a clearer way to do this?

I already looked at this question, but I want to set a value in a variable, not just check it in an if statement.

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Yes, you can always use this:

var tata = Boolean(toto);

And here are some tests:

for (var value of [0, 1, -1, "0", "1", "cat", true, false, undefined, null]) {
    console.log(`Boolean(${typeof value} ${value}) is ${Boolean(value)}`);
}

Results:

Boolean(number 0) is false
Boolean(number 1) is true
Boolean(number -1) is true
Boolean(string 0) is true
Boolean(string 1) is true
Boolean(string cat) is true
Boolean(boolean true) is true
Boolean(boolean false) is false
Boolean(undefined undefined) is false
Boolean(object null) is false
over 4 years ago · Santiago Trujillo Relatório

0

!!o is also shorthand of Boolean(o) and works exactly same. (for converting truthy/falsy to true/false).

let o = {a: 1}
Boolean(o) // true
!!o // true
// !!o is shorthand of Boolean(o) for converting `truthy/falsy` to `true/false`

Note that

over 4 years ago · Santiago Trujillo 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