概述
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
javascript判断指定值是不是数字
方法1:isNaN()函数
isNaN() 函数可确定值是否为非数字(Not-a-Number)。如果该值等于 NaN,则此函数返回 true。否则返回 false。
var c="hello"; //字符串
isNaN(c); //返回一个true;
var c=10; //数字
isNaN(c);//返回一个false
登录后复制
isNaN()的缺点就在于 null、空格以及空串会被按照0来处理,需要优化一下
/**
*判断是否是数字
*
**/
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;
}
}
登录后复制
方法2:利用typeof的返回值
验证方法:如果返回的值为Number,则为数字;如果返回值为String或其它,则不是数字。如下所示:
var a=123;
var b='123abc';
typeof(a) //Number
typeof(b) //String
登录后复制
方法3:使用正则表达式
(1)、校验只要是数字(包含正负整数,0以及正负浮点数)就返回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;
}
}
登录后复制
(2)、 校验正负正数就返回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;
}
}
登录后复制
【推荐学习:javascript高级教程】
以上就是javascript怎么判断指定值是不是数字的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是粗心草丛为你收集整理的javascript怎么判断指定值是不是数字的全部内容,希望文章能够帮你解决javascript怎么判断指定值是不是数字所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复