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 相关文章推荐
Javascript 获取字符串字节数的多种方法
Jun 02 Javascript
JAVASCRIPT实现的WEB页面跳转以及页面间传值方法
May 13 Javascript
JS中操作JSON总结
Dec 06 Javascript
Easyui form combobox省市区三级联动
Jan 13 Javascript
浅谈时钟的生成(js手写简洁代码)
Aug 20 Javascript
12 款 JS 代码测试必备工具(翻译)
Dec 13 Javascript
windows下vue-cli及webpack搭建安装环境
Apr 25 Javascript
在Vue中如何使用Cookie操作实例
Jul 27 Javascript
vue自定义filters过滤器
Apr 26 Javascript
Node.js创建HTTP文件服务器的使用示例
May 11 Javascript
iview form清除校验状态的实现
Sep 19 Javascript
JS PHP字符串截取函数实现原理解析
Aug 29 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/10/09 PHP
收藏的一个php小偷的核心程序
2007/04/09 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
php使用gettimeofday函数返回当前时间并存放在关联数组里
2015/03/19 PHP
php统计数组元素个数的方法
2015/07/02 PHP
asp 的 分词实现代码
2007/05/24 Javascript
JQuery操作Select的Options的Bug(IE8兼容性视图模式)
2013/04/21 Javascript
JavaScript中setInterval的用法总结
2013/11/20 Javascript
jQuery 计算iframe 窗口大小的方法
2014/05/13 Javascript
JS组件Bootstrap Table表格行拖拽效果实现代码
2020/08/27 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
JavaScript中匿名函数的递归调用
2017/01/22 Javascript
利用10行js代码实现上下滚动公告效果
2017/12/08 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
element-ui 中的table的列隐藏问题解决
2018/08/24 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
JS尾递归的实现方法及代码优化技巧
2019/01/19 Javascript
ES6 Array常用扩展的应用实例分析
2019/06/26 Javascript
angular6开发steps步骤条组件
2019/07/04 Javascript
使用python实现链表操作
2018/01/26 Python
python 集合 并集、交集 Series list set 转换的实例
2018/05/29 Python
python中的常量和变量代码详解
2018/07/25 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
python自动化发送邮件实例讲解
2021/01/04 Python
css3 条纹化和透明化表格Firefox下测试成功
2014/04/15 HTML / CSS
德国鞋子网上商店:Omoda.de
2017/03/31 全球购物
GOOD AMERICAN官网:为曲线性感而设计
2017/12/28 全球购物
社区巾帼文明岗事迹材料
2014/06/03 职场文书
离职证明范本
2015/06/12 职场文书
学校证明范文
2015/06/24 职场文书
结婚典礼致辞
2015/07/28 职场文书
给校长的建议书作文500字
2015/09/14 职场文书
python实现简单区块链结构
2021/04/25 Python
Python代码风格与编程习惯重要吗?
2021/06/03 Python
直播实况, OMG破敌三路五十分钟大战神技局摩托车
2022/04/01 DOTA
Go gorilla securecookie库的安装使用详解
2022/08/14 Golang