null,NULL,”null”,undefined
后台返回值的时候常有返回值是null,或者”null”甚至是不返回的情况,所以前台获取数据的时候就要加以判别再进行处理,以下是工作中的小总结。
undefined
如果是undefined,使用typeof来判断
var tmp = undefined;
if (typeof(tmp) == "undefined"){
alert("undefined");
}
提示:
typeof 返回的是字符串,有六种可能:”number”、”string”、”boolean”、”object”、”function”、”undefined”
“null”,”NULL”,”Null”…
这些都是返回的字符串null,区别在于大小写不同,所以要先进行大小写转换
var tmp = "NuLL"; //"null","NULL"等
if (tmp.toLowerCase()=="null"){
alert("null");
}
提示:
转换大小写方法:str.toUpperCase() str.toLowerCase()
null
返回是对象null,可以用typeof和真假加以判断
var tmp = null;
if (!tmp && typeof(tmp)!="undefined" && tmp!=0){
alert("null");
}
提示:如果仅仅是判断真假,是判断不出来是null的,因为undefined同null一样,转化为Boolean之后也是假的,
区别在于null和undefined 的type不同,所以可以在这基础上判断出来。null是对象,typeof得到的是object。
小结
返回值 | 判断方法 |
---|---|
undefined | typeof(==”undefined”) |
“null”,”NULL”等 | 转换大小写比较“null” |
null | typeof+真假判断+0判断 |