Comment vérifier s'il s'agit d'un nombre en javascript

藏色散人
Libérer: 2023-01-07 11:41:53
original
5190 Les gens l'ont consulté

Comment vérifier s'il s'agit d'un nombre en JavaScript : 1. Utilisez la fonction isNaN() pour vérifier ; 2. Utilisez des expressions régulières pour vérifier 3. Utilisez la valeur de retour de parseFloat() pour vérifier ;

Comment vérifier s'il s'agit d'un nombre en javascript

L'environnement d'exploitation de cet article : système Windows 7, version JavaScript 1.8.5, ordinateur Dell G3.

Comment vérifier s'il s'agit d'un nombre en JavaScript ?

Méthode 1 : Utiliser la fonction isNaN()

La fonction isNaN() est une fonction globale fournie avec js. La fonction isNaN() est utilisée pour vérifier si son paramètre est une valeur non numérique.

Si la valeur x est la valeur non numérique spéciale NaN (ou peut être convertie en une telle valeur), la valeur renvoyée est vraie ; si la valeur x est une autre valeur, false est renvoyé. L'inconvénient de

isNaN() est que null, espace et chaîne vide seront traités comme 0

NaN : Not a Number

<script>
document.write(isNaN(123));  //数字
document.write(isNaN(-1.23));  //数字
document.write(isNaN(5-2));  //数字
document.write(isNaN(0));  //数字
document.write(isNaN("Hello"));  //字符串
document.write(isNaN("2005/12/12"));  //字符串
</script>
Copier après la connexion

Sortie :

false
false
false
false
true
true
Copier après la connexion

Inconvénient : isNaN() traitera null, espace et chaîne vide comme 0 0, le contrôle n'est donc pas rigoureux.

Alors traitez-le et utilisez-le avec le type d'opérateur.

Exemple :

// true:数值型的,false:非数值型
function myIsNaN(value) {
   document.write((typeof value === &#39;number&#39; && !isNaN(value))+"<br>");
}
myIsNaN(10); 
myIsNaN(null); 
myIsNaN( );
myIsNaN();
Copier après la connexion

Sortie :

true
false
false
false
Copier après la connexion

Méthode 2 : Utilisez des expressions régulières

(1) pour vérifier que tant qu'il s'agit d'un nombre (y compris les entiers positifs et négatifs, 0 et les nombres à virgule flottante positifs et négatifs), il renverra true

/**
* 校验只要是数字(包含正负整数,0以及正负浮点数)就返回true
**/
function isNumber(val){
    var regPos = /^[0-9]+.?[0-9]*/; //判断是否是数字。
  
    if(regPos.test(val) ){
        return true;
    }else{
        return false;
    }
}
Copier après la connexion

( 2). Vérifiez les nombres positifs et négatifs et renverra true

/**
* 校验正负正数就返回true
**/
function isIntNum(val){
    var regPos = / ^\d+$/; // 非负整数 
    var regNeg = /^\-[1-9][0-9]*$/; // 负整数
    if(regPos.test(val) && regNeg.test(val)){
        return true;
    }else{
        return false;
    } 
}
Copier après la connexion

Méthode 3 : utilisez la valeur de retour de parseFloat()

La fonction parseFloat() peut analyser une chaîne et renvoyer une virgule flottante. nombre.

Cette fonction précise si le premier caractère de la chaîne est un nombre. Si tel est le cas, la chaîne est analysée jusqu'à ce qu'elle atteigne la fin du nombre, et le nombre est renvoyé sous forme de nombre plutôt que de chaîne.

Utilisation : analysez la chaîne spécifiée dans le paramètre en un nombre à virgule flottante et renvoyez-la.

/**
* 验证数据 是数字:返回true;不是数字:返回false
**/
function Number(val) {
  if (parseFloat(val).toString() == "NaN") {
    
    return false;
  } else {
    return true;
  }
}
//isNaN(val)不能判断空串或一个空格
//如果是一个空串、空格或null,而isNaN是做为数字0进行处理的,
//而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的。
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!