Maison > Article > interface Web > Comment forcer la conversion de valeurs numériques en javascript ? (Résumé de la méthode)
Le contenu de cet article explique comment forcer la conversion des valeurs en javascript ? (Résumé de la méthode) a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère que cela vous sera utile.
Les types de données Javascript sont divisés en types de données de base et types de données de référence
Données de base : nombre, booléen, non défini, nul, chaîne ;
Données de référence : objet ;
Quand 0.000...01, lorsque le point décimal est supérieur ou égal à 7 chiffres, il sera automatiquement converti en notation scientifique
Quand 20000...00, lorsque la partie entière est supérieur ou égal à 22 chiffres, il sera automatiquement converti en notation scientifique.
Numéro(x) : un paramètre
Lorsque le paramètre est de type Nombre : il peut être affiché correctement ;
console.log(Number(1)); //1 console.log(Number(1e-7)); //1e-7 console.log(Number(0b111)); //7 console.log(Number(NaN)); //NaN
Lorsque le paramètre est de type booléen : true->1;fasle->0;
console.log(Number(true)); //1 console.log(Number(false)); //0
Lorsque le paramètre est indéfini : Sa valeur est NaN
console.log(Number(undefined)); //NaN
Lorsque le paramètre est nul :
console.log(Number(null)); //0
Lorsque le paramètre est de type String :
//数字字符串 console.log(Number("123")); //123 console.log(Number("-123")); //-123 console.log(Number("12.3")); //12.3 console.log(Number("1e-7")); //1e-7 console.log(Number("0xff")); //255 console.log(Number("00123")); //123 console.log(Number(" 123")); //123 console.log(Number("\t\n123")); //123
//数字+字符或全字符字符串 console.log(Number('a123')); //NaN console.log(Number("false")); //NaN console.log(Number("a123")); //NaN
//空串或者空格字符串 console.log(Number("\t\n")); //0 console.log(Number(" ")); //0 console.log(Number("")); //0
Lorsque le type de paramètre est objet : effectuer .valueOf() d'abord, si vous obtenez L'objet exécute ensuite toString() jusqu'à ce que le type de données de base soit obtenu, par exemple {}.valueOf().toString() = "[object Object]" Le résultat final de number est NaN
console.log(Number({})); //NaN console.log(Number([1])); //1 console.log(Number([1,2])); //NaN cosole.log(Number([])); //0
Le processus est le suivant : convertissez d'abord String(x) en chaîne, puis convertissez la valeur en un nombre décimal en utilisant la base y comme base, s'il n'est pas renseigné, c'est 10, la plage de y : [2,36]
Lorsque le paramètre x est un nombre : cela vaut-il la peine de le noter ? C'est une valeur de type 0,001, 1e-7. La valeur après la virgule décimale (e) sera ignorée et la valeur précédente sera renvoyée. .
console.log(parseInt(123)); //123 console.log(parseInt(1e-7)); //1 console.log(parseInt(0xff)); //255 console.log(parseInt(NaN)); //NaN console.log(parseInt(0.00001)); //0
Lorsque le paramètre x est booléen, indéfini, nul :
console.log(parseInt(true)); //NaN console.log(parseInt(false)); //NaN console.log(parseInt(undefined)); //NaN console.log(parseInt(null)); //NaN
console.log(parseInt("")); //NaN console.log(parseInt("-123")); //-123 console.log(parseInt(" ")); //NaN console.log(parseInt("\t\n")); //NaN console.log(parseInt("a123")); //NaN console.log(parseInt("123a")); //123
console.log(parseInt({1:2})); //"[object Object]"->NaN console.log(parseInt([])); //""->NaN console.log(parseInt([1,2])); //"1,2"->//1parseFloat(x) : un paramètre qui peut représenter correctement le flottant. les nombres de points et la notation scientifique, mais ne prend pas en charge les chaînes. Le nombre ne peut pas être représenté correctement, le reste est le même que parseInt(x,10)
String(), .toString()
console.log(parseInt("f",2)); //NaN console.log(parseInt("11f",2); //3 console.log(parseInt("123",37)); //NaN console.log(parseInt("0xff",0)); //255 console.log(parseInt("0xff",NaN)); //255 console.log(parseInt("ff",[])); //NaN
console.log(parseFloat(0xff)); //255 console.log(parseFloat("0xff")); //0 console.log(parseInt("0xff")); //255 个人猜测parseInt(x,y)有y的存在所以能正确输出 console.log(parseFloat(1e22)); //1e22 console.log(parseFloat(1e-7)); //1e-7 console.log(parseFloat("00123")); //123 console.log(parseFloat(" ")); //NaNDeuxième : y.toString(x), qui signifie convertir la valeur cible y en une valeur basée sur x
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!