Blok/İşlev/Modül Kapsamı ve TDZ
Blok, işlev ve modül kapsamını anlayın; TDZ'yi uygulamada görün ve değişkenlerin dışarı sızmasını önleyin.
Blok/İşlev/Modül Kapsamı ve TDZ, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.
Giriş
Amaç: Değişkenlerin nerede bulunduğunu ve ne zaman kullanılabilir olduklarını bilmek.
- Blok kapsamı (let/const)
- İşlev kapsamı (var)
- Modül kapsamı
- TDZ güvenliği

Blok kapsamı gösterimi
Blok kapsamı, değişkenleri bir çift küme paranteziyle sınırlı tutar.
// Block scope: let/const exist only inside the braces
let lives = 3;
if (true) {
const bonus = 5;
let level = 1;
console.log("Inside block:", bonus, level);
}
console.log("Lives:", lives);
// Uncommenting next line would fail (not in scope):
// console.log(bonus, level);

var ile işlev kapsamı
var işlev kapsamındadır, blok kapsamında değildir. Modern JS'te let/const ifadelerini tercih edin.
// Function scope: var is visible across the whole function
function demo() {
if (true) {
var x = 10; // function-scoped
}
console.log("x is visible here:", x); // 10
}
demo();

Modül kapsamı temelleri
Modül kapsamı: en üst düzey bağlamalar dosyaya özgüdür (ES modülleri).
// Module scope: top-level variables are local to the module file
const appName = "CoddyKit";
console.log("App name:", appName);
// In a real project, this would be its own file/module.
// Other files must import to access appName.

Zamansal Ölü Bölge
TDZ, yanlışlıkla yapılan erken okumaları önler. Önce bildirin, sonra kullanın.
// TDZ: using let/const before declaration throws ReferenceError
try {
// Uncommenting would trigger TDZ:
// console.log(mode); // ReferenceError
let mode = "dark";
console.log("Mode after declare:", mode);
} catch (e) {
console.log("Caught:", e.message);
}

Kapsamın sakıncaları
Sakıncalar:
- Aynı kapsamda var ile let/const ifadelerini birlikte kullanmayın.
- Bildirimi kullanıma yakın yapın.
- Bildirim satırından önce değerleri okumaktan kaçının (TDZ).

TDZ sınaması
Hızlı kontrol: TDZ davranışı.

Özet
Özet: let/const blok kapsamındadır; var işlev kapsamındadır; modüllerin kendilerine ait dosya kapsamı vardır; TDZ erken erişimi engeller.

Sıkça Sorulan Sorular
“Blok/İşlev/Modül Kapsamı ve TDZ” dersi ücretsiz mi?
Evet — “Blok/İşlev/Modül Kapsamı ve TDZ” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.
“Blok/İşlev/Modül Kapsamı ve TDZ” dersinde ne öğreneceğim?
Blok, işlev ve modül kapsamını anlayın; TDZ'yi uygulamada görün ve değişkenlerin dışarı sızmasını önleyin. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 2. dersidir.
“Blok/İşlev/Modül Kapsamı ve TDZ” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- let, const ve var'dan Kaçınma
- Blok/İşlev/Modül Kapsamı ve TDZ
- Adlandırma, Okunabilirlik ve Yaygın Tuzaklar