c语言编程笔录

首页 >   > 笔记大全

笔记大全

es6如何判断是不是数字

更新时间:2023-10-23

前言

在程序开发中,经常会有判断一个变量的类型的需求,其中对于判断一个变量是否为数字的需求也很常见。不同的场景下判断一个变量是否为数字的方式也不同,这里介绍几种判断方法。

判断 Number 类型

Number 是 JavaScript 中的数字类型,可以使用 typeof 判断一个变量是否为 Number。

    function isNumber(num) {
      return typeof num==='number';
    }
  

示例:

    console.log(isNumber(1));    // true
    console.log(isNumber('1'));  // false
  

判断 NaN

NaN 是 JavaScript 中的一个特殊值,代表 Not a Number,通过 isNaN 函数可以判断一个变量是否为 NaN。

    function isNaN(num) {
      return typeof num==='number' && isNaN(num);
    }
  

示例:

    console.log(isNaN(1));       // false
    console.log(isNaN('abc'));   // true
    console.log(isNaN(NaN));     // true
  

使用正则表达式

使用正则表达式可以判断一个字符串是否为数字的格式,从而判断变量是否为数字。注意不仅需要匹配整数和小数,还需要考虑正负号和科学计数法等情况。

    function isNumber(str) {
      return /^[-+]?(\d+|\d+\.\d*|\d*\.\d+)([eE][-+]?\d+)?$/.test(str);
    }
  

示例:

    console.log(isNumber('123'));        // true
    console.log(isNumber('-123.4'));     // true
    console.log(isNumber('1.2e3'));      // true
    console.log(isNumber('abc'));        // false
  

使用 parseFloat 函数

JavaScript 中的 parseFloat 函数可以将一个字符串解析为浮点数类型,如果解析结果是 NaN,说明原来的字符串不是一个数字。

    function isNumber(str) {
      return !isNaN(parseFloat(str));
    }
  

示例:

    console.log(isNumber('123'));        // true
    console.log(isNumber('-123.4'));     // true
    console.log(isNumber('1.2e3'));      // true
    console.log(isNumber('abc'));        // false
  

总结

以上介绍了几种判断一个变量是否为数字的方法,不同的方法适用于不同的场景。在代码中根据具体的需求选择合适的方法即可。