JS中判断null、undefined与NaN的方法
写了个 str ="s"++;
然后出现Nan,找了一会。
收集资料如下判断:
1.判断undefined:
代码如下:
1 <span style="font-size: small;">var tmp = undefined; 2 if (typeof(tmp) == "undefined"){ 3 alert("undefined"); 4 }</span>
说明:typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"
2.判断null:
1 <span style="font-size: small;">var tmp = null; 2 if (!tmp && typeof(tmp)!="undefined" && tmp!=0){ 3 alert("null"); 4 } </span>
3.判断NaN:
1 <span style="font-size: small;">var tmp = 0/0; 2 if(isNaN(tmp)){ 3 alert("NaN"); 4 }</span>
说明:如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。
提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。
4.判断undefined和null:
1 <span style="font-size: small;">var tmp = undefined; 2 if (tmp== undefined) 3 { 4 alert("null or undefined"); 5 } </span>
<span style="font-size: small;">var tmp = undefined; if (tmp== null) { alert("null or undefined"); }</span>
说明:null==undefined
<!--EndFragment-->
5.判断undefined、null与NaN:
1 <span style="font-size: small;">var tmp = null; 2 if (!tmp) 3 { 4 alert("null or undefined or NaN"); 5 }</span>
提示:一般不那么区分就使用这个足够。
原文链接:http://www.jb51.net/article/48481.htm