Junior
JavaScript barındırma nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
JavaScript Barındırma (veya JavaScript hosting), JavaScript derleyicisinin, kodun yürütülmesinden önce değişken ve fonksiyon bildirimlerinin "yukarı taşındığı" davranışını ifade eder.
Ana noktalar:
- Yalnızca bildirimler yukarı taşınır, başlatmalar değil. Bu, bir değişken veya fonksiyonun kodda bildirildiğinden önce kullanılabileceği anlamına gelir, ancak başlatılmadan önce değişkenin değeri
undefinedolacaktır. var,let/constve fonksiyon bildirimleri için ayrı davranış.var: Bildirimler yukarı taşınır ve başlangıçtaundefineddeğeriyle başlatılır.console.log(seninVarin); // undefined var seninVarin = 10;letveconst: Bildirimler yukarı taşınır, ancak başlatılmaz. Onlara erişim, başlatılmadan önce hataReferenceError(Geçici Ölüm Bölgesi - Temporal Dead Zone) ile sonuçlanır.// console.log(seninLetin); // ReferenceError: cannot access 'seninLetin' before initialization let seninLetin = 20;- Fonksiyon Bildirimleri: Tüm fonksiyon bildirimi (isim ve gövde) yukarı taşınır. Fonksiyon, bildiriminin öncesinde çağrılabilir.
fonksiyonum(); // "merhaba" function fonksiyonum() { console.log("merhaba"); } - Fonksiyon İfadeleri: Sadece fonksiyona atanan değişken (
var,letveyaconst) yukarı taşınır. Fonksiyon, atamadan önce çağrılamaz.// fonksiyonIfadem(); // TypeError: fonksiyonIfadem bir fonksiyon değil (var ile bildirildiyse) // fonksiyonIfadem(); // ReferenceError: cannot access 'fonksiyonIfadem' before initialization (let/const ile bildirildiyse) var fonksiyonIfadem = function() { console.log("dünya"); };
Hosting kavramını anlamak, beklenmedik davranışları ve hataları önlemek için önemlidir. let ve const kullanımı, değişken bildirimlerinin davranışını daha öngörülebilir hale getirir.