Méthode : 1. test() avec expression régulière ; 2. fonction parseFloat(), syntaxe "parseFloat(value).toString()=="NaN"" ; type de valeur ==='numéro'&&!isNaN(value)".
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
Méthode 1 : Utilisez test() + expression régulière
pour vérifier que tant qu'il s'agit d'un nombre (y compris les entiers positifs et négatifs, 0 et positif et négatif nombres à virgule flottante), il renverra vrai
/** * 校验只要是数字(包含正负整数,0以及正负浮点数)就返回true **/ function isNumber(val){ var regPos = /^\d+(\.\d+)?$/; //非负浮点数 var regNeg = /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //负浮点数 if(regPos.test(val) && regNeg.test(val)){ return true; }else{ return false; } }
Méthode 2 : utilisez la fonction parseFloat()
/** * 验证数据 是数字:返回true;不是数字:返回false **/ function Number(val) { if (parseFloat(val).toString() == "NaN") { return false; } else { return true; } }
Méthode 3 : utilisez la fonction isNaN()
// true:数值型的,false:非数值型 function myIsNaN(value) { return typeof value === 'number' && !isNaN(value); }
isNaN () Explication détaillée
Pour les tableaux vides et les tableaux avec un seul membre numérique, isNaN renvoie false.
isNaN([]) // false isNaN([123]) // false isNaN(['123']) // false
La raison pour laquelle le code ci-dessus renvoie false est que ces tableaux peuvent être convertis en valeurs numériques par la fonction Number. Veuillez vous référer au chapitre "Conversion de type de données".
Par conséquent, avant d'utiliser isNaN, il est préférable de déterminer le type de données.
function myIsNaN(value) { return typeof value === 'number' && !isNaN(value); }
[Apprentissage recommandé : Tutoriel avancé 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!