相信你對全局變量一定不陌生,在函數作用域里用a=1這種形式定義的變量會是一個全局變量,在全局作用域里,用下面3種形式都可以創建對全局可見的命名:
復制代碼 代碼如下:
<script>
var a = 1;
b = 2;
window.c = 3;
</script>
var與不var有兩個區別:
1 var的全局變量不能被刪除,因為delete智能刪除對象的可刪除的屬性,而通過var 定義的全局屬性會被標明不可刪除。需要說明的是,delete不成功并不會拋錯,delete的返回值是true|false。
2 var定義的全局變量會被提升,而不用var定義的全局變量不會被提升。可以看下面程序的執行結果:
復制代碼 代碼如下:
<script>
alert(a);
var a=1;
</script>
復制代碼 代碼如下:
<script>
alert(a);//error, a undefined
a=1;
</script>
新聞熱點
疑難解答
圖片精選