Heim > Web-Frontend > js-Tutorial > Hauptteil

So ermitteln Sie, ob ein angegebener Wert in Javascript eine Zahl ist

青灯夜游
Freigeben: 2021-10-13 15:54:36
Original
8266 Leute haben es durchsucht

Beurteilungsmethode: 1. Verwenden Sie die Funktion isNaN(), die Syntax „isNaN(value)“, wenn der Wert eine Zahl ist, geben Sie false zurück 2. Verwenden Sie den Rückgabewert von typeof, die Syntax „typeof(value)“; Wenn der zurückgegebene Wert „Number“ ist, handelt es sich um eine Zahl 3. Verwenden Sie zur Beurteilung reguläre Ausdrücke.

So ermitteln Sie, ob ein angegebener Wert in Javascript eine Zahl ist

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

... Diese Funktion gibt true zurück, wenn der Wert gleich NaN ist. Andernfalls wird false zurückgegeben. Der Nachteil von

var c="hello"; //字符串
isNaN(c); //返回一个true;
var c=10; //数字
isNaN(c);//返回一个false
Nach dem Login kopieren
isNaN() besteht darin, dass Null, Leerzeichen und leere Zeichenfolgen als 0 behandelt werden, was optimiert werden muss
/**
*判断是否是数字
*
**/

function isRealNum(val){
    // isNaN()函数 把空串 空格 以及NUll 按照0来处理 所以先去除,
    
  if(val === "" || val ==null){
        return false;
  }
   if(!isNaN(val)){    
  //对于空数组和只有一个数值成员的数组或全是数字组成的字符串,
  //isNaN返回false,例如:'123'、[]、[2]、['123'],isNaN返回false,
   //所以如果不需要val包含这些特殊情况,则这个判断改写为if(!isNaN(val) && typeof val === 'number' )
    return true; 
  }

 else{ 
    return false; 
  } 
}
Nach dem Login kopieren

Methode 2: Verwenden Sie den Rückgabewert von typeof

Überprüfungsmethode: Wenn zurückgegeben value ist Number , es ist eine Zahl; wenn der Rückgabewert ein String oder etwas anderes ist, ist es keine Zahl. Wie unten gezeigt:

var a=123;
var b='123abc';
typeof(a) //Number
typeof(b) //String
Nach dem Login kopieren

Methode 3: Verwenden Sie reguläre Ausdrücke

(1) und prüfen Sie, dass dies der Fall ist, solange es sich um eine Zahl handelt (einschließlich positiver und negativer Ganzzahlen, 0 sowie positiver und negativer Gleitkommazahlen). return true

/**
* 校验只要是数字(包含正负整数,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;
    }
}
Nach dem Login kopieren
(2), Überprüfen Sie die positiven und negativen Zahlen und geben Sie true zurück

/**
* 校验正负正数就返回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;
    } 
}
Nach dem Login kopieren

[Empfohlenes Lernen:

Javascript-Tutorial für Fortgeschrittene

]

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob ein angegebener Wert in Javascript eine Zahl ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!