JavaScript dilinde değişkenleri tanımlarken var ya da let tanımlayıcıları kullanılır. Aralarındaki en temel fark değişkenin geçerlilik durumudur. let ile tanımlanan değişken sadece ve sadece tanımlandığı blok (for, while vb.) içerisinde geçerlidir. var ile tanımlanan değişkenler ise tanımlandıkları yere göre geçerlilik kazanırlar. Örneğin bir fonksiyon içerisinde kullanılmışsa sadece o fonksiyonda, tüm fonksiyon tanımlamalarından önce kullanılmışsa bu durumda daha genel olarak tüm fonksiyonlarda kullanılabilirler. Aşağıda var ve let kullanılarak yapılmış değişik değişken tanımlamalarıa yer verilmiştir.
<script language="javascript" type="text/javascript">
//tum fonksiyonlarda gecerli tamsayı deger saklayan degisken
var sayici=0;
function arttir(){
//sayici degiskeninin degeri 10 arttiriliyor
sayici+=10;
console.log("sayici="+ sayici.toString());
}//end of arttir
function azalt(){
//sayici degiskeninin degeri 5 azaltiliyor
sayici-=5;
console.log("sayici="+ sayici.toString());
}//end of azalt
function listele(){
//sadece listele fonskiyonunda gecerli degisken
var adres="http://www.bilalsert.com.tr";
console.log("web adresi = " + adres);
//let ile sadece for dongusunde kullanilan bir degisken (i) tanimlaniyor
//harf harf adres bilgisi yazdiliyor.
for(let i=0;i<adres.length;i++)
console.log(i.toString() + ". harf = " + adres.charAt(i));
}//end of listele
//arttir cagriliyor
arttir();
//azalt cagriliyor
azalt();
//listele cagriliyor
listele();
< /script>
Verilen kodlar çalıştırıldığında aşağıdaki resimde verildiği üzere konsol çıktısı alınacaktır. Buradan da görüldüğü üzere sayici global bir değişken iken adres sadece listele(); fonksiyonunda geçerli bir değişkendir. i ise sadece ve sadece for döngüsünde geçerli bir değişken olup döngü tamamlandığında kullanılamayacaktır.