var veya let komutu ile yapılan değişken tanımlarına eğer herhangi bir değer atanmaması durumunda ilk alacağı değer her zaman undefined‘dır. Eğer herhangi tanımı yapılmayan değişkene erişilmeye çalışılırsa ReferenceError hatası alınır.

var a;  
console.log("a'nın değeri " + a); // a'nın değeri undefined  
  
var b;  
console.log("b'nın değeri " + b); // b'nin değeri undefined  
  
console.log("c'nin değeri " + c); //   
Yakalanmamış Referans Hatası: c değeri tanımlanamadı  
  
let x;  
console.log("x'in değeri " + x); // x'in değeri undefined  
  
console.log("y'in değeri " + y); //   
Yakalanmamış Referans Hatası: y değeri tanımlanamadı  
let y;  

JavaScript’te içeriği undefined veya null olan değişkenlerin Boolean karşılığı her zaman false‘dur. Eğer undefined veya null değeri Boolean bir kontrol deyiminde (if, while vb..) kullanılırsa false çıktı verecek şekilde davranır.

var fiyat  
if(fiyat){  
   console.log('fiyat tanımlanmamış');  
}else{  
  console.log('Ürünün Fiyatı : ' + fiyat);  
}  

Eğer undefined değeri sayısal bir içerikle birlikte kullanıldığında NaN (Not a Number) değerini alır. NaN‘da tıpkı undefined daki gibi Boolean karşılığı false dur.

var a;  
a + 2;  // NaN sonucunu verir.  
  
// boolean kullanımı  
var fiyat;  
var yeniFiyat = fiyat + 2;  
if(yeniFiyat){  
   console.log('Ürünün yeni fiyatı :' + yeniFiyat);  
}else{  
   console.log('Ürünün fiyatı değişmedi');  
}  

null değişkeni sayısal değişkene atandığında 0 (sıfır), boolean bir değişkene atandığında da false değerini alır. Örneğin ;

var n = null;  
console.log(n * 32); // ekrana 0 yazdırır.  
// boolean kullanımı  
var indirim = null;  
if(indirim){  
   console.log('indirim var.');  
}else{  
   console.log('indirim yok.');  
}  

Kaynak: https://developer.mozilla.org

0 cevaplar

Cevapla

Want to join the discussion?
Feel free to contribute!

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir