JS中判断null、undefined与NaN的方法


Posted in Javascript onMarch 24, 2014

写了个 str ="s"++;
然后出现Nan,找了一会。
收集资料如下判断:
1.判断undefined:

<span style="font-size: small;">var tmp = undefined; 
if (typeof(tmp) == "undefined"){ 
alert("undefined"); 
}</span>

说明:typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"
2.判断null:
<span style="font-size: small;">var tmp = null; 
if (!tmp && typeof(tmp)!="undefined" && tmp!=0){ 
alert("null"); 
} </span>

3.判断NaN:
<span style="font-size: small;">var tmp = 0/0; 
if(isNaN(tmp)){ 
alert("NaN"); 
}</span>

说明:如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。
提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。
4.判断undefined和null:
<span style="font-size: small;">var tmp = undefined; 
if (tmp== undefined) 
{ 
alert("null or undefined"); 
} </span>

<span style="font-size: small;">var tmp = undefined; 
if (tmp== null) 
{ 
alert("null or undefined"); 
}</span>

说明:null==undefined
<!--EndFragment-->
5.判断undefined、null与NaN:
<span style="font-size: small;">var tmp = null; 
if (!tmp) 
{ 
alert("null or undefined or NaN"); 
}</span>

提示:一般不那么区分就使用这个足够。
Javascript 相关文章推荐
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
Mar 24 Javascript
基于JQuery的asp.net树实现代码
Nov 30 Javascript
jquery.artwl.thickbox.js  一个非常简单好用的jQuery弹出层插件
Mar 01 Javascript
jquery插件制作 自增长输入框实现代码
Aug 17 jQuery
JavaScript中的值是按值传递还是按引用传递问题探讨
Jan 30 Javascript
jQuery简单tab切换效果实现方法
Apr 08 Javascript
js enter键激发事件实例代码
Aug 17 Javascript
详细讲解JavaScript中的this绑定
Oct 10 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
Jan 10 Javascript
解决Linux无法正常安装与卸载Node.js的方法
Jan 19 Javascript
vue.js通过路由实现经典的三栏布局实例代码
Jul 08 Javascript
vue 二维码长按保存和复制内容操作
Sep 22 Javascript
jquery高级编程的最佳实践详解
Mar 23 #Javascript
js 判断浏览器使用的语言示例代码
Mar 22 #Javascript
jquery easyui 对于开始时间小于结束时间的判断示例
Mar 22 #Javascript
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
Mar 22 #Javascript
jquery获取复选框被选中的值
Mar 22 #Javascript
纯JS实现根据CSS的class选择DOM
Mar 22 #Javascript
使用JS取得焦点(focus)元素代码
Mar 22 #Javascript
You might like
二次元帅气男生排行榜,只想悄悄收藏系列
2020/03/04 日漫
PHP验证码类代码( 最新修改,完全定制化! )
2010/12/02 PHP
PHP时间格式控制符对照表分享
2013/07/23 PHP
IE JS编程需注意的内存释放问题
2009/06/23 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
js验证是否为数字的总结
2013/04/14 Javascript
JQuery在页面中添加和除移DOM示例代码
2013/06/24 Javascript
Grunt入门教程(自动任务运行器)
2015/08/06 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
jquery密码强度校验
2015/12/02 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
AngularJS ng-mousedown 指令
2016/08/02 Javascript
Vue 过渡实现轮播图效果
2017/03/27 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
Vue中使用ElementUI使用第三方图标库iconfont的示例
2018/10/11 Javascript
微信小程序实现写入读取缓存详解
2019/08/30 Javascript
小程序实现锚点滑动效果
2019/09/23 Javascript
element-ui table组件如何使用render属性的实现
2019/11/04 Javascript
[01:23:35]Ti4主赛事胜者组 DK vs EG 1
2014/07/19 DOTA
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python使用MD5加密算法对字符串进行加密操作示例
2018/03/30 Python
Python中asyncio模块的深入讲解
2019/06/10 Python
python 实现dict转json并保存文件
2019/12/05 Python
Python基于正则表达式实现计算器功能
2020/07/13 Python
利用CSS3实现的文字定时向上滚动
2016/08/29 HTML / CSS
浅谈html5 响应式布局
2014/12/24 HTML / CSS
一文彻底解决HTML5页面中长按保存图片功能
2019/06/10 HTML / CSS
Nike加拿大官网:Nike.com (CA)
2019/04/09 全球购物
介绍下Java中==和equals的区别
2013/09/01 面试题
入党积极分子思想汇报
2014/01/02 职场文书
高中生第一学年自我鉴定
2014/09/12 职场文书
民主生活会汇报材料
2014/12/15 职场文书
小人国观后感
2015/06/11 职场文书
Go语言的协程上下文的几个方法和用法
2022/04/11 Golang
Python中request的基本使用解决乱码问题
2022/04/12 Python