La primitive booléenne est un type de données logique qui ne comporte que deux valeurs: true
et false
.
Objet booléen
Toutes les valeurs en JavaScript sont implicitement true
ou false
. L'objet Boolean
peut être utilisé pour forcer une valeur à une valeur booléenne true
ou false
, en fonction de l'état implicite "true" ou "false" de cette valeur:
Boolean( "A string literal" );
> true
Les valeurs qui génèrent false
incluent 0
, null
, undefined
, NaN
, une chaîne vide (""
), une valeur omise et une valeur booléenne false
. Toutes les autres valeurs donnent true
.
Boolean( NaN );
> false
Boolean( -0 );
> false
Boolean( 5 );
> true
Boolean( "false" ); // the value `"false"` is a string, and therefore implicitly true.
> true
Évitez d'utiliser l'objet Boolean
comme constructeur. Il crée un objet contenant une valeur booléenne, et non la primitive booléenne que vous pourriez attendre:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean );
> false
console.log( falseObject );
> Boolean { false }
falseObject.valueOf();
> false
Étant donné que tous les objets sont intrinsèquement vrais, l'objet booléen obtenu renvoie toujours approximativement la valeur "true", même s'il contient une valeur false
:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean == true );
> false
console.log( falseObject == true );
> true
Vérifier vos connaissances
Parmi les propositions suivantes, laquelle renvoie false
?
0
null
"none"