zoukankan      html  css  js  c++  java
  • js判断数字

    第一种方法 isNaN

    isNaN  返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。 
      NaN 即 Not a Number
      isNaN(numValue)

    但是如果numValue果是一个空串或是一个空格,而isNaN是做为数字0进行处理的,而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的。

    isNaN()的缺点就在于 null、空格以及空串会被按照0来处理

    第二种方法 正则表达式

    function checkRate(input) {
      var re = /^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 //判断正整数 /^[1-9]+[0-9]*]*$/ 
      var nubmer = document.getElementById(input).value;

      if (!re.test(nubmer)) {
        alert("请输入数字");
        document.getElementById(input).value = "";
        return false;
      }
    }

    第三种方法 利用parseFloat的返回值

    /*----0313-------------验证数据 是数字:返回true;不是数字:返回false--------工具方法,不含有业务逻辑---------------------*/
    function isNotANumber(inputData) {
      //isNaN(inputData)不能判断空串或一个空格
      //如果是一个空串或是一个空格,而isNaN是做为数字0进行处理的,而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的。
      if (parseFloat(inputData).toString() == "NaN") {
        //alert("请输入数字……");注掉,放到调用时,由调用者弹出提示。
        return false;
      } else {
        return true;
      }
    }
    /*--End--0313-------------验证数据 是数字:返回true;不是数字:返回false---------------------------------*/

  • 相关阅读:
    JS语法转换-ES6转ES5
    百度编辑器的初步使用
    github使用的小坑 处理
    关于input的检验问题
    一些代码规范(收集)
    jquery源码解析日常
    重操JS旧业第九弹:函数表达式
    重操JS旧业第八弹:面向对象与继承
    重操JS旧业第七弹:面向对象与对象创建
    重操JS旧业第六弹:基本类型包装
  • 原文地址:https://www.cnblogs.com/zyzg/p/7704007.html
Copyright © 2011-2022 走看看