js中各种类型的变量在if条件中是true还是false
投稿:whsnow
变量在if条件中到底是true还是false,还是比较让人迷糊,下面来进行测试,测试常见的变量类型在if条件中的表现
js的弱类型让人感觉很多东西都比较迷惑,例如变量在if条件中到底是true还是false,如果在强类型语言中将一个非boolean类型的变量放在if条件中时,是需要进行类型转换的,但是js不需要,下面来进行测试,测试常见的变量类型在if条件中的表现
!function test1(){ <span style="color:#ff0000;">var a,b=-1,c= 1,d= 0,e=null,f=undefined,g='',h="";</span> if(!a){ console.log('a='+a) } if(!b){ console.log("b="+b) } if(!c){ console.log("c="+c) } if(!d){ console.log("d="+d) } if(!e){ console.log("e="+e) } if(!f){ console.log("f="+f) } if(!g){ console.log("g="+g) } if(!h){ console.log("h="+h) } }()
设定了各种变量类型,分别放入if条件中
执行结果
a=undefined
d=0
e=null
f=undefined
g=
h=
i=false