在不确定变量类型的情况下,判断Javascript变量是否为空不要使用:
if(tmp){}
上述判断的问题在于,例如:当tmp的值为数字0时,也会返回false。
所以尽量使用:
if(tmp != null){}
下面是if(tmp){}判断的结果:
if(tmp) if(tmp != null)
tmp未定义时 //false //false
var tmp; //false //false
var tmp = 0; //false //true
var tmp = 10; //true //true
var tmp = ""; //false //true
var tmp = "ddd"; //true //true
var tmp = 0.0; //false //true
var tmp = new String(); //true //true
结论:要判断tmp未定义或者为null可以使用if(tmp != null),不能使用if(tmp)