همانگونه که می دانیم متغیر ها در دو نوع global و local می باشند. متغیر های local آنگونه که از معنی شان بر می آید تنها در scope تعریف شده قابل دسترسی هستند ولی متغیر های global از طریق تمام scopeهای فایل قابل دسترسی اند.
در جاوا اسکریپت در صورتی که هنگام تغییر یک متغیر ، از کلمه کلیدی var استفاده نکنیم، آن متغیر به صورت global تعریف می شود.
به مثال زیر توجه نمایید:
function aa(){
a='a';
var b='b';
alert(a);
alert(b);
}
aa();
alert(a);
alert(b);
در این کد ابتدا a ، سپس b ، سپس a به صورت آلرت نمایش داده می شود و در انتها خطای
Uncaught ReferenceError: b is not defined
را دریافت می کنید. زیرا متغیر b سراسری نیست.