写了个 str =s++;
然后出现nan,找了一会。
收集资料如下判断:
1.判断undefined:
复制代码 代码如下:
var tmp = undefined;
if (typeof(tmp) == undefined){
alert(undefined);
}
说明:typeof 返回的是字符串,有六种可能:number、string、boolean、object、function、undefined
2.判断null:
复制代码 代码如下:
var tmp = null;
if (!tmp && typeof(tmp)!=undefined && tmp!=0){
alert(null);
}
3.判断nan:
复制代码 代码如下:
var tmp = 0/0;
if(isnan(tmp)){
alert(nan);
}
说明:如果把 nan 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 nan,不能使用 == 或 === 运算符。
提示:isnan() 函数通常用于检测 parsefloat() 和 parseint() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isnan() 函数来检测算数错误,比如用 0 作除数的情况。
4.判断undefined和null:
复制代码 代码如下:
var tmp = undefined;
if (tmp== undefined)
{
alert(null or undefined);
}
复制代码 代码如下:
var tmp = undefined;
if (tmp== null)
{
alert(null or undefined);
}
说明:null==undefined
5.判断undefined、null与nan:
复制代码 代码如下:
var tmp = null;
if (!tmp)
{
alert(null or undefined or nan);
}
提示:一般不那么区分就使用这个足够。