Convertir NaN en 0 en utilisant JavaScript

Convertir un NaN en 0 en utilisant JavaScript #

Utilisez l’opérateur logique OR (||) pour convertir NaN en 0par exemple
const result = val || 0;. L’opérateur logique OR (||) renvoie la valeur de droite si la valeur de gauche est fausse.
droite si la valeur de gauche est fausse.

let val = NaN;

val = val || 0;

console.log(val); 

Le site
OU logique (||)
renvoie la valeur de droite si la valeur de gauche est fausse.

Les valeurs erronées en JavaScript sont null, undefined, false, 0, ""
(chaîne vide), NaN (pas un nombre).

Cela signifie qu’on ne vérifie pas explicitement si la valeur est égale à NaNnous vérifions que la valeur est fausse. Il peut donc s’agir d’une chaîne vide, undefined, null, etc.

Une façon simple d’y penser est la suivante : la valeur à droite de l’opérateur est une valeur de secours au cas où la valeur à gauche serait fausse.
de secours au cas où la valeur de gauche serait fausse.

Alternativement, vous pouvez vérifier explicitement si la valeur est NaN.

let val = NaN;

if (Number.isNaN(val)) {
  val = 0;
}

console.log(val); 

Déclarant le val avec la variable let nous permet de la réaffecter si
la valeur stockée est égale à NaN.

Bien que cette approche soit un peu plus verbeuse, elle est toujours facile à lire et
intuitive.

Vous pouvez également utiliser l’opérateur
opérateur ternaire.

Utiliser l’opérateur ternaire pour convertir NaN en zéro, par exemple
const result = Number.isNaN(val) ? 0 : val;. Si la valeur est égale à NaN,
l’opérateur renvoie 0sinon la valeur est retournée.

let val = NaN;

const result = Number.isNaN(val) ? 0 : val;

console.log(result); 

L’opérateur ternaire est très similaire à l’opérateur if/else déclaration.

Si l’expression à gauche du point d’interrogation est évaluée à une valeur véridique, la valeur à gauche du deux-points est retournée, sinon la valeur à droite est retournée.

Notez que nous avons utilisé la fonction
Number.isNaN
pour vérifier si la valeur est NaN (pas un nombre).

Vous ne devriez pas essayer de comparer explicitement à NaN car NaN est la seule valeur
en JavaScript, qui n’est pas égale à elle-même.

console.log(NaN === NaN); 

Toute autre valeur que vous essayez de comparer à elle-même, vous obtiendrez true en retour, mais
ce n’est pas le cas avec NaN.

Laisser un commentaire