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