2014-09-02 21 views

cevap

2
var foo = false; 


if(!foo) { 
    // will log 
    console.log("foo is defined but false"); 
} 

if(angular.isUndefined(foo)){ 
    // will not log as foo is defined 
    console.log("foo is undefined") 
} 

başka bir örnek bakınız

if(!foo) { 
    // will throw exception "Uncaught ReferenceError: foo is not defined " 
    console.log("foo is defined but false"); 
} 

if(angular.isUndefined(foo)){ 
    // will log 
    console.log("foo is undefined") 
} 

angular.isUndefined (foo) kaydetmek için sarılmış

if(typeof foo == "undefined") 

değerlendirilmesi daha başka hiçbir şey yapmaz kadar etkili 1 karakter evet. !

-Operatör kontroller tanımlanmış değişken yanlış olarak değerlendirilirse iken

yüzden

if(!foo) 

aynıdır gibi

if(foo != true) 

GÜNCELLEME:

açıklamalarda belirtildiği gibi

i yazmak "false olarak değerlendirir" falsenullundefinedNaN"" (boş dize) ve 0 dahil

+0

Doğru. Ve yanlış gibi zorlanan başka şeyler de vardır, null gibi. –

İlgili konular