O primitivo booleano é um tipo de dado lógico com apenas dois valores: true
e
false
.
Objeto booleano
Todos os valores em JavaScript são implicitamente true
ou false
. O objeto Boolean
pode ser usado para coagir um valor para um
Booleano true
ou false
, com base no estado implícito (verdadeiro ou falso)
:
Boolean( "A string literal" );
> true
Os valores que resultam em false
incluem 0
, null
, undefined
, NaN
, um valor
string (""
), um valor omitido e um booleano false
. Resultado de todos os outros valores
em true
.
Boolean( NaN );
> false
Boolean( -0 );
> false
Boolean( 5 );
> true
Boolean( "false" ); // the value `"false"` is a string, and therefore implicitly true.
> true
Evite usar o objeto Boolean
como construtor. Ele cria um objeto
contendo um valor booleano, não o primitivo booleano que você espera:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean );
> false
console.log( falseObject );
> Boolean { false }
falseObject.valueOf();
> false
Como todos os objetos são inerentemente verdadeiros,
o objeto booleano resultante sempre avalia vagamente como verdadeiro, mesmo se
contiver um valor false
:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean == true );
> false
console.log( falseObject == true );
> true
Teste seu conhecimento
Qual das opções a seguir retorna false
?
0
Null
."none"
.