Javascript中的isNaN函数使用说明


Posted in Javascript onNovember 10, 2011

isNaN函数

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

必选项 numvalue 参数为要检查是否为 NAN 的值。

说明

假如值是 NaN, 那么 isNaN 函数返回 true ,否则返回 false 。 使用这个函数的典型情况是检查 parseInt 和 parseFloat 方法的输入值。
还有一种办法,变量可以与它自身进行比较。 假如比较的结果不等,那么它就是 NaN 。 这是因为 NaN 是唯一与自身不等的值。
isNaN函数用法示例:比如我有一个textbox用于录入数字型的数据,在提交表单的时候我要验证该textbox中的值是否为数据,那么我们可以使用isNaN函数。

function checkValue() 
{ 
if(isNaN(document.all.textbox.value)) 
{ 
alert("请用数字录入!"); 
return false; 
} 
}

isNaN的典型使用是为parseInt和parseFloat方法的输入值进行一个提前的检验,但这种简单结果并不好。虽然可能有一些教课书上也这么说,甚至于错误地认为其是一个检查parseInt和parseFloat的返回值,这样都是错误的。

parseInt与parseFloat是将一个字符型按数字进行一个转化。但自身还有错误处理的,如果你的输入值不是一个数字时,则parseInt和parseFloat返回一个消息:“is not number”,但一般的情况下我们都是对一个数字样式的字符串进行转换的,谁会无聊到转化非数字型的呢?所以你输入的参数是否合格,可以先进行一次isNaN检查的。

但如果我们有意识的以下行为,事先是不能用isNaN进行检查的,数字开头中间含有字母时,如果用isNaN进行检查是通不过的。

如果是一个空串或是一个空格,而isNaN是做为数字0进行处理的,而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的。
两个函数是独立的,并不会谁为谁而生存,isNaN与parseInt/parseFloat并没有关系。

Javascript 相关文章推荐
jValidate 基于jQuery的表单验证插件
Dec 12 Javascript
jq选项卡鼠标延迟的插件实例
May 13 Javascript
jquery异步跨域访问代码
Jun 28 Javascript
javascript创建createXmlHttpRequest对象示例代码
Feb 10 Javascript
jquery 实现两Select 标签项互调示例代码
Sep 25 Javascript
JS动态添加选项案例分析
Oct 17 Javascript
AngularJS指令与指令之间的交互功能示例
Dec 14 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
Feb 10 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
Jun 17 Javascript
JavaScript动态创建二维数组的方法示例
Feb 01 Javascript
小程序scroll-view安卓机隐藏横向滚动条的实现详解
May 16 Javascript
vue滚动插件better-scroll使用详解
Oct 18 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
Nov 09 #Javascript
关于二级域名下使用一级域名下的COOKIE的问题
Nov 07 #Javascript
用jquery和json从后台获得数据集的代码
Nov 07 #Javascript
JS重要知识点小结
Nov 06 #Javascript
javascript日期转换 时间戳转日期格式
Nov 05 #Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
Nov 05 #Javascript
再说AutoComplete自动补全之实现原理
Nov 05 #Javascript
You might like
第三节--定义一个类
2006/11/16 PHP
php 在windows下配置虚拟目录的方法介绍
2013/06/26 PHP
ThinkPHP开发框架函数详解:C方法
2015/08/14 PHP
php抓取网站图片并保存的实现方法
2015/10/29 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
自写的利用PDO对mysql数据库增删改查操作类
2018/02/19 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
掌握PHP垃圾回收机制详解
2019/03/13 PHP
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件
2011/12/21 Javascript
给文字加上着重号的JS代码
2013/11/12 Javascript
Javascript学习笔记之函数篇(六) : 作用域与命名空间
2014/11/23 Javascript
JavaScript知识点整理
2015/12/09 Javascript
七个不允许错过的jQuery小技巧
2015/12/21 Javascript
AngularJS ng-mousedown 指令
2016/08/02 Javascript
onmouseover事件和onmouseout事件全面理解
2016/08/15 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
Gulp实现静态网页模块化的方法详解
2018/01/09 Javascript
axios携带cookie配置详解(axios+koa)
2018/12/28 Javascript
JavaScript实现打砖块游戏
2020/02/25 Javascript
Python3基础之list列表实例解析
2014/08/13 Python
Python程序中的观察者模式结构编写示例
2016/05/27 Python
Python入门_学会创建并调用函数的方法
2017/05/16 Python
python读写配置文件操作示例
2019/07/03 Python
HTML文本属性&颜色控制属性的实现
2019/12/17 HTML / CSS
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
个人应聘自我评价分享
2013/11/18 职场文书
翻译学院毕业生自荐书
2014/02/02 职场文书
2014年消防工作实施方案
2014/02/20 职场文书
小学生我的梦想演讲稿
2014/08/21 职场文书
2015年爱牙日活动总结
2015/02/05 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
会计专业自荐信范文
2019/05/22 职场文书
AngularJS实现多级下拉框
2022/03/25 Javascript
Python安装及建立虚拟环境的完整步骤
2022/06/25 Servers