(Built-in) way in JavaScript to check if a string is a valid number

前端 未结 30 3896
-上瘾入骨i
-上瘾入骨i 2020-11-22 01:54

I\'m hoping there\'s something in the same conceptual space as the old VB6 IsNumeric() function?

30条回答
  •  深忆病人
    2020-11-22 02:30

    My attempt at a slightly confusing, Pherhaps not the best solution

    function isInt(a){
        return a === ""+~~a
    }
    
    
    console.log(isInt('abcd'));         // false
    console.log(isInt('123a'));         // false
    console.log(isInt('1'));            // true
    console.log(isInt('0'));            // true
    console.log(isInt('-0'));           // false
    console.log(isInt('01'));           // false
    console.log(isInt('10'));           // true
    console.log(isInt('-1234567890'));  // true
    console.log(isInt(1234));           // false
    console.log(isInt('123.4'));        // false
    console.log(isInt(''));             // false
    
    // other types then string returns false
    console.log(isInt(5));              // false
    console.log(isInt(undefined));      // false
    console.log(isInt(null));           // false
    console.log(isInt('0x1'));          // false
    console.log(isInt(Infinity));       // false
    

提交回复
热议问题