Maison >interface Web >js tutoriel >Erreurs courantes de conversion de type JavaScript et comment les corriger
Conversions de types JavaScript courantes et leurs résultats inattendus
La conversion de type JavaScript peut être déroutante pour les débutants. JavaScript convertit automatiquement entre différents types de données lors de certaines opérations, ce qui peut conduire à des résultats inattendus. Comprendre le fonctionnement de la conversion de type est essentiel pour écrire du code propre et sans bug. Ce guide vous guidera à travers différentes conversions de types en JavaScript, expliquera les concepts et vous montrera les résultats auxquels vous pouvez vous attendre.
Avant de plonger dans les conversions, commençons par comprendre comment JavaScript identifie les types de données. JavaScript utilise typeof pour renvoyer le type d'une variable ou d'une valeur.
console.log(typeof null); // "object" console.log(typeof undefined); // "undefined"
Explication :
JavaScript fournit la fonction Number() pour convertir les valeurs en un type numérique. Regardons quelques cas.
let score = "33"; // Type: string let valueInNum = Number(score); console.log(typeof score); // "string" console.log(typeof valueInNum); // "number" console.log(valueInNum); // 33
Explication :
let scoreStr = "33abc"; // Type: string let valueInNum1 = Number(scoreStr); console.log(typeof valueInNum1); // "number" console.log(valueInNum1); // NaN
Explication :
La valeur nulle de JavaScript peut également être convertie en nombre. Voici ce qui se passe :
let scoreNull = null; let valueInNull = Number(scoreNull); console.log(typeof valueInNull); // "number" console.log(valueInNull); // 0
Explication :
En JavaScript, diverses valeurs peuvent être converties en valeurs booléennes, avec vrai ou faux en sortie. Ceci est particulièrement utile dans les instructions conditionnelles.
let isLoggedIn = 1; let boolInNum = Boolean(isLoggedIn); console.log(boolInNum); // true
Explication :
Voici quelques exemples supplémentaires de valeurs véridiques et fausses :
console.log(typeof null); // "object" console.log(typeof undefined); // "undefined"
Explication :
JavaScript utilise la coercition pour modifier les valeurs entre les types selon les besoins. Voici un bref résumé des conversions courantes :
Value | Conversion Function | Resulting Type | Example Output |
---|---|---|---|
"33" | Number("33") | number | 33 |
"33abc" | Number("33abc") | number | NaN |
null | Number(null) | number | 0 |
1 | Boolean(1) | boolean | true |
0 | Boolean(0) | boolean | false |
"" (empty) | Boolean("") | boolean | false |
"hello" | Boolean("hello") | boolean | true |
Q : Pourquoi typeof null renvoie-t-il « objet » ?
R : Il s’agit d’un bug de longue date dans JavaScript. Initialement, null était destiné à être un objet espace réservé, mais a conservé cette classification pour des raisons de compatibilité avec l'ancien code.
Q : Quelles valeurs sont considérées comme fausses en JavaScript ?
A : 0, "" (chaîne vide), null, undefined et NaN sont des valeurs fausses en JavaScript, ce qui signifie qu'elles sont évaluées comme fausses lorsqu'elles sont converties en booléen.
Q : Que signifie NaN en JavaScript ?
R : NaN signifie "Not-a-Number" et résulte d'opérations sur des nombres non valides, telles que la tentative de conversion de "33abc" en nombre.
Comprendre la conversion de type en JavaScript est essentiel pour travailler avec des variables et effectuer des manipulations de données. En vous familiarisant avec typeof et les effets des fonctions de conversion comme Number() et Boolean(), vous pouvez éviter les bugs et écrire un code plus fiable. Continuez à mettre en pratique ces concepts avec différents exemples, et ils deviendront bientôt une seconde nature dans votre parcours de programmation JavaScript.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!