Uygulamalarda değişkenler verilerin sembolik olarak gösterimi veya depolanması için kullanılır. Değişkenlere javascriptte identifiers denir ve javascript’in kuralları çerçevesinde oluşturulurlar. Javascript’de değişken için üç türlü değişken tanımlayıcısı kullanılır. Bu tanımlayıcılar var, let ve const‘tur. Bu kelimelerden sonra ise değişkenimizin adını yazarız.

Değişkenlerin nasıl adlandırıldığı ile ilgili çeşitli kuralları burada bulabilirsiniz

Javascript’de değişken adı rakam ile başlayamaz ancak herhangi bir harf, alt tire  ( _ ) veya dolar işareti ( $ ) işareti ile başlayabilir ve daha sonra rakam kullanabilirsiniz. Değişken adları büyük/küçük harf duyarlı olduğundan her ikisini de içeren değişken adları kullanılabilir. Değişken adları için çeşitli UnicodeUnicode (Evrensel Kod) Unicode Consortium organizasyonu tarafından geliştirilen ve her karaktere bir sayı değeri karşılığı atayan bir endüstri standardıdır. harfleri bulunan ISO 8859-1 standardındaki karakter setini kullanabilirsiniz. Değişkenler ilk defa tanımlandığında ve herhangi bir değer atanmadığında her zaman undefined değerini alır. Bir değişkenin tanımı yapılmadan kod içerisinde kullanmak istediğinizde ReferenceError hatası alırsınız.

JS’de temel olarak iki türlü ver tipi vardır. Bunlar basit veri türleri (primitives) ve Object’tir. Basit veri türlerinin tipleri ise Boolean, null, undefined, Number, String, SymbolECMAScript 2015 ile birlikte gelen ve benzersiz simge değer ve özellikleri benzersiz (unique) ve değiştirilemez (immutable) olan değişkenlerdir..

Javascript’de bir değişken tanımladıktan sonra satırın sonuna noktalı virgül ( ; ) konulur. Aynı satırda birden çok değişken tanımı yapılacaksa değişkenler arasında virgül (,) ve tanımların bittiği satırı da noktalı virgül konulur. Aslında bir değişken tanımlarken satırın sonuna noktalı virgül koymak şart değildir. JS yorumlayıcılar satırının sonunu escape chacter marifetiyle bulur. Fakat ilerde .js dosyalarımızın boyutlarını küçülmek için kullanacağımız JSMinifier, YUI Comporessor tarzı uygulamalar satırın sonundaki escape character ‘i ( n ) sildiği için kodunuzda hata çıkma olasığı yüksektir.

JavaScript’in mucidi Brenden Eich, Nisan 2012’de yayınladığı “The Infernal Smicolon” (Chennemden Gelen Noktalı Virgül) Başlıklı makalesinde noktalı virgül konulmadığında otomatik noktalı virgül ekleme davranışının doğurabileceği hatalardan bahsetmiş ve kullanılmasını tavsiye etmiştir. Makalenin tamamını buradan okuyabilirsiniz.

// Number (sayi) türünde değişken tanımlamak;
var satisFiyati = 2.5;
// String türünde değişken tanımlamak;
var btnName = "Devam";
// Boolean türünde değişken tanımlamak;
var devamEdilsinmi = false;
// Birden çok değişkeni tek satırda tanımlamakda mümkün.
// yukarıdaki tanımları tek satırda yazmaya çalışalım.
// Dikkat edilirse tanımlarsan sonra noktalıvirgül yerine sadece
// virgül kullanılır. 
var satisFiyati = 2.5, btnName = "Devam",  devamEdilsinmi = false;
// İstisnai tanımlama biçimi sabit tanımlarda geçerlidir. Örnek 
const pi = 3.14;
// let tanımlayıcısının var tanımlayıcısından farklı olarak 
// sadece belirli bir blog içinde geçerli olması için kullanırız. 
// Aşağıdaki örnekte slogal değişkeninin kapsamı sadece
// hosgeldiniz fonksiyon bloğu ile sınırlıdır. 
var hosgeldiniz = function(){
let slogan = 'Merhaba';
alert(slogan);
}

Tanımlayıcılar

var (variables kelimesinin kısaltılmış hali) tanımlayıcısı : Kodun herhangi bir yerinde ve herhangi veri türünde değişken tanımlamak için kullanılır.
let tanımlayıcısı : Kodun herhangi bir yerinde ve herhangi bir ver türünde değişken tanımlamak için kullanılır. var‘dan farklı olarak let tanımlayıcısı ile sadece fonksiyonun kapsamında veya bloğunda kullanılabilen değişkenler tanımlanabilir. Bu kapsam veya bloğun dışında let ile tanımlanan değişkenlere erişilemez.
const (constant kelimesinin kısaltılmış hali) tanımlayıcısı : Atama yapıldıktan sonra değiştirilemeyen fakat sadece okunabilen sabitler tanımlamak için kullanılır.

Değişken Tanımlama

Javascript’te bir değişken bir kaç farklı yolla tanımlanabilir.

  • var kelimesi kullanılarak yapılan tanımlamalar. Örneğin, var plakaKodu = 42; Bu söz dizimi ile hem yerel hem global değişkenler tanımlanabilir.
  • Sadece değişken adı ve değer kullanarak verilen değişkenler. Örneğin plakaKodu = 42; Bu şekilde tanımlanan değişkenler her zaman global olarak tanımlanır. Bu şekilde tanımlanan değişkenler için javascript uyarı verir. Programlama disiplini açısından bu şekildeki tanımlama yapılmamalıdır. Fakat  “use strict” kuralını kodunuzda uygulanmasını isterseniz javascript bu durumda uyarı değil ReferenceError hatası verir.
  • let kelimesi ile yapılan tanımlamalar. Örneğin, let plakaKodu = 42; Bu şekildeki tanımlamalar sadece geçerli blok seviyesinde yerel değişken tanımlanmış olur. Bu değişkenin etki alanı içinde bulunduğu kod bloğunun (statement) etki alanıdır.

var veya let komutu ile yapılan değişken tanımlarına eğer herhangi bir değer ataması yapılmadığı taktirde ilk olarak alacağı değer her zaman undefined‘dir.

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 undefined’in boolean karşlığı her zaman false’dur. Eğer undefined değeri boolean bir kontrol deyiminde (if, while vb..) kullanılırsa false çıktı verecek şekilde davranır. Bu şekilde undefined ile bir değişkene atama yapılıp yapılmadığını rahatlıkla kontrol edebilirsiniz.

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

Cevapla

Want to join the discussion?
Feel free to contribute!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Kaynaklar : https://developer.mozilla.org