Maison >interface Web >js tutoriel >Comment déterminer si une valeur est un nombre en javascript

Comment déterminer si une valeur est un nombre en javascript

青灯夜游
青灯夜游original
2021-04-26 15:44:432356parcourir

Méthode : 1. test() avec expression régulière ; 2. fonction parseFloat(), syntaxe "parseFloat(value).toString()=="NaN"" ; type de valeur ==='numéro'&&!isNaN(value)".

Comment déterminer si une valeur est un nombre en javascript

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn