js是一种弱类型的语言,if后面可以跟很多类型不用进行类型转换,如果不搞清楚状况对我们的使用,有非常大的障碍。
1、null
var a = null;
if(a)
{
console.log("true")
}
else
{
console.log("false")
};
其结果为 false
2、"null"
var a = "null";
if(a)
{
console.log("true")
}
else
{
console.log("false")
};
其结果为true
3、undefined
if(undefined)
{
console.log("true")
}
else
{
console.log("false")
};
其结果为false
4、"undefined "
if("undefined")
{
console.log("true")
}
else
{
console.log("false")
};
其结果为true
5、""
if("")
{
console.log("true")
}
else
{
console.log("false")
};
其结果为false
6、0
if(0)
{
console.log("true")
}
else
{
console.log("false")
};
其结果为false
7、NaN
if(NaN)
{
console.log("true")
}
else
{
console.log("false")
};
其结果为 false
结论
if对
null 、undefined、""、0、NaN
是false