`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—falsedans le type Boolean0— Le nombre zéro (le décimal0.0est é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—truedans le type Boolean- Nombres (autres que 0) — Par exemple,
1et-1sont é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 typeSymbolsont é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.