JavaScript: Başlangıçtan İleri Seviyeye
Bölüm 3 / 312 dk okuma

Değişkenler: var, let, const

Üç değişken tanımlama yolunun farkları, scope davranışı ve hangisini ne zaman kullanmalısın.

JavaScript'te bir değer saklamak için 3 anahtar kelime var. Hepsinin amacı "isim ver, içine değer koy" olsa da davranışları çok farklı.

const — varsayılan tercih

Değer atandıktan sonra yeniden atanamaz:

const PI = 3.14159;
PI = 3; // ❌ TypeError: Assignment to constant variable

Ama içerik değişebilir (objeler/diziler için):

const user = { name: "Furkan" };
user.name = "Ali"; // ✅ çalışır — referans aynı, içerik değişti
user = {};         // ❌ referansı değiştiremezsin

let — değişecek değerler için

Yeniden atanabilir ama block scope'tadır (sadece tanımlandığı {} içinde yaşar).

let count = 0;
count = count + 1; // ✅
 
if (true) {
  let inside = 1;
}
console.log(inside); // ❌ ReferenceError

var — kullanma

ES6 öncesinden kalma, function scope'lu eski sözdizimi. Hoisting davranışı beklenmedik buglar üretir:

console.log(x); // undefined (hata değil!)
var x = 5;

Modern kodda var kullanmak için bir sebep yok.

Karar ağacı

Değer hiç değişmeyecek mi?  →  const
Değişecek mi?                →  let
                                ↑ neredeyse her zaman bu ikisi

İsimlendirme kuralları

  • camelCase: userName, totalPrice
  • Sabitler için UPPER_SNAKE_CASE: MAX_RETRY_COUNT
  • Sayı ile başlayamaz: 1user
  • Türkçe karakter teknik olarak çalışır ama kullanma: kullanıcıAdı
💡Pratik

Yeni bir değişken tanımlarken refleks olarak const yaz. Ancak gerçekten değişmesi gerektiğinde let'e geç.

Bu bölümü bitirdin mi?

İlerlemen tarayıcıda saklanır, eğitim listesinde görünür.

Paylaş