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" false
null
undefined
NaN
""
(boş dize) ve 0
dahil
Doğru. Ve yanlış gibi zorlanan başka şeyler de vardır, null gibi. –