`truthy` et `falsy` en JavaScript
Cet article explique truthy
et falsy
en JavaScript.
YouTube Video
truthy
et falsy
en JavaScript
Les concepts de truthy
et falsy
en JavaScript jouent un rôle très important, notamment dans l'évaluation des instructions conditionnelles. Truthy
et falsy
déterminent si une valeur est évaluée comme vraie (true
) ou fausse (false
), mais ces valeurs ne sont pas nécessairement les booléens true
ou false
eux-mêmes.
Valeurs falsy
Les valeurs falsy
désignent les valeurs évaluées comme étant false
dans les conditions JavaScript. Voici une liste des valeurs falsy
en JavaScript.
1const values = [
2 false,
3 0,
4 -0,
5 0.0,
6 -0.0,
7 0n,
8 -0n,
9 "",
10 null,
11 undefined,
12 NaN
13];
14
15for (let value of values) {
16 if (value) {
17 console.log(`${value} is truthy`);
18 } else {
19 console.log(`${value} is falsy`);
20 }
21}
Dans cet exemple, toutes les valeurs falsy
seront affichées comme "falsy". Voici une liste des valeurs falsy
en JavaScript.
false
—false
dans le type Boolean0
— Le nombre zéro (le décimal0.0
est égalementfalsy
)-0
— Le zéro négatif (techniquement distinct de0
, mais toujoursfalsy
)0n
— Zéro dans le type BigInt""
— Une chaîne vide de longueur 0null
— Absence de valeurundefined
— Valeur indéfinieNaN
— Pas un nombre
Ces valeurs sont traitées comme false
dans les opérations logiques et les instructions conditionnelles (comme les instructions if
).
Valeurs truthy
Toutes les valeurs qui ne sont pas falsy
sont truthy
. Cela se réfère aux valeurs évaluées comme étant des booléens true
. En JavaScript, de nombreuses valeurs sont traitées comme truthy
.
1const values = [
2 true,
3 1,
4 -1,
5 "Hello",
6 " ",
7 [],
8 {},
9 function() {},
10 Symbol(),
11 Infinity
12];
13
14for (let value of values) {
15 if (value) {
16 console.log(value, ' is truthy');
17 } else {
18 console.log(value, ' is falsy');
19 }
20}
Dans ce code, les valeurs truthy
sont affichées comme "truthy". Par exemple, les valeurs suivantes sont truthy
.
true
—true
dans le type Boolean- Nombres (autres que 0) — Par exemple,
1
et-1
sont égalementvrais
. - Les chaînes (non vides) — par exemple,
"Hello"
ou" "
(même les chaînes contenant uniquement des espaces sonttruthy
) - Objets — Même les objets vides (
{}
) et les tableaux ([]
) sontvrais
. - Fonctions — Les fonctions elles-mêmes sont également
vraies
. Symbol
— Les valeurs de typeSymbol
sont égalementtruthy
.Infinity
— L'infini positif et négatif sont tous deuxvrais
.
Applications des notions de truthy
et falsy
Les concepts de truthy
et falsy
sont souvent utilisés dans les conditionnelles et les opérations logiques. Par exemple, lors de la définition d'une valeur par défaut en utilisant l'opérateur ||
(OU logique), la première valeur truthy
est renvoyée comme résultat.
Comment vérifier les valeurs falsy
Pour vérifier les valeurs falsy
, il est pratique d'utiliser la fonction Boolean
. La fonction Boolean
convertit explicitement une valeur donnée en type boolean.
Exemples de la fonction Boolean
1const values = [
2 false,
3 0,
4 "",
5 null,
6 undefined,
7 NaN
8];
9
10for (let value of values) {
11 console.log(`${value} is ${Boolean(value) ? 'truthy' : 'falsy'}`);
12}
Conclusion
Les notions de truthy
et falsy
en JavaScript sont importantes pour comprendre la manière dont les valeurs non booleanes sont évaluées dans les expressions conditionnelles. Les valeurs falsy
incluent false
, 0
, une chaîne vide, null
, undefined
et NaN
, tandis que toutes les autres valeurs sont évaluées comme truthy
. Comprendre ces concepts vous permet d'écrire un code plus flexible et efficace.
Vous pouvez suivre l'article ci-dessus avec Visual Studio Code sur notre chaîne YouTube. Veuillez également consulter la chaîne YouTube.