Bu eğitimde, örnekler yardımıyla JavaScript kaldırma hakkında bilgi edineceksiniz.
JavaScript'te kaldırma , bildirimden önce bir işlevin veya değişkenin kullanılabileceği bir davranıştır. Örneğin,
// using test before declaring console.log(test); // undefined var test;
Yukarıdaki program çalışır ve çıktı tanımsız olacaktır. Yukarıdaki program şu şekilde davranır:
// using test before declaring var test; console.log(test); // undefined
Değişken testi sadece bildirildiği ve değeri olmadığı undefined
için ona değer atanır.
Değişkenler hakkında daha fazla bilgi edinmek istiyorsanız JavaScript Değişkenleri sayfasını ziyaret edin.
Not : Kaldırma işleminde, bildirim programda yukarı taşmış gibi görünse de, gerçekleşen asıl şey, derleme aşamasında işlev ve değişken bildirimlerinin belleğe eklenmesidir.
Değişken Kaldırma
Değişkenler ve sabitler açısından, anahtar kelime var
kaldırılır ve let
ve const
değişik kaldırma izin vermez.
Örneğin,
// program to display value a = 5; console.log(a); var a; // 5
Yukarıdaki örnekte, a değişkeni tanımlanmadan önce kullanılmıştır. Ve program çalışır ve çıktıyı görüntüler 5. Program şu şekilde davranır:
// program to display value var a; a = 5; console.log(a); // 5
Ancak JavaScript'te, başlatmalar kaldırılmaz. Örneğin,
// program to display value console.log(a); var a = 5;
Çıktı
Tanımsız
Yukarıdaki program şu şekilde davranır:
var a; console.log(a); a = 5;
Derleme aşamasında sadece bildirim belleğe taşınır. Dolayısıyla, a değişkeninin değeri, undefined
a'nın onu başlatmadan yazdırılmasıdır.
Ayrıca, değişken işlevin içinde kullanıldığında, değişken yalnızca işlevin üstüne kaldırılır. Örneğin,
// program to display value var a = 4; function greet() ( b = 'hello'; console.log(b); // hello var b; ) greet(); // hello console.log(b);
Çıktı
merhaba Yakalanmamış Referans Hatası: b tanımlı değil
Yukarıdaki örnekte, değişken b, fonksiyonun tepesine kaldırılır greet
ve yerel bir değişken haline gelir. Dolayısıyla b'ye yalnızca işlevin içinden erişilebilir. b, global bir değişken haline gelmez.
Yerel ve genel değişkenler hakkında daha fazla bilgi edinmek için JavaScript Değişken Kapsamı'nı ziyaret edin.
Not : Kaldırma sırasında, değişken bildirimine yalnızca anlık kapsam için erişilebilir.
let
Anahtar kelimeyle birlikte bir değişken kullanılırsa , bu değişken kaldırılmaz. Örneğin,
// program to display value a = 5; console.log(a); let a; // error
Çıktı
Yakalanmamış ReferenceError: Başlatma öncesinde 'a' öğesine erişilemiyor
Kullanılırken let
önce değişken bildirilmelidir.
Fonksiyon Kaldırma
Bir işlev bildirilmeden önce çağrılabilir. Örneğin,
// program to print the text greet(); function greet() ( console.log('Hi, there.'); )
Çıktı
Merhaba
Yukarıdaki programda fonksiyon tanımlanmadan greet
önce çağrılır ve program çıktıyı gösterir. Bu, kaldırmadan kaynaklanmaktadır.
Ancak, ifade olarak bir işlev kullanıldığında , yalnızca bildirimler kaldırıldığı için bir hata oluşur. Örneğin;
// program to print the text greet(); let greet = function() ( console.log('Hi, there.'); )
Çıktı
Yakalanmamış Referans Hatası: selam tanımlanmadı
Eğer var
yukarıdaki programının kullanıldığı, hata olacaktır:
Yakalanmamış TypeError: selamlama bir işlev değil
Not : Kaldırma işlemi genellikle Python, C, C ++, Java gibi diğer programlama dillerinde yapılmaz.
Kaldırma, programınızda istenmeyen sonuçlara neden olabilir. Ve kullanmadan önce değişkenleri ve fonksiyonları bildirmek ve kaldırmadan kaçınmak en iyisidir.
Değişkenler söz konusu olduğunda kullanmak let
daha iyidir var
.