js全局变量和局部变量
生活随笔
收集整理的這篇文章主要介紹了
js全局变量和局部变量
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1 <script>
2 var i = 'yuanjianhang';
3 function myloveName() {
4 alert(i);
5 var i = 'guanxi';
6
7 }
8 myloveName();
9 </script>
運行結(jié)果 undefined
1 <script> 2 var i = 'yuanjianhang'; 3 function myloveName() { 4 var i = 'guanxi'; 5 alert(i); 6 } 7 myloveName(); 8 </script>運行結(jié)果 ?guanxi
代碼分析 ?function內(nèi) 加上var 代表局部變量,聲明的局部變量名稱和外部的全局變量名稱相同,但是與外部的i是沒有關(guān)系的,只是名稱相同而已,所以alert(i)在,局部變量定義之前會輸出undefined.
1 <script> 2 var i = 'yuanjianhang'; 3 function myloveName() { 4 alert(i); 5 i = 'guanxi'; 6 7 } 8 myloveName(); 9 </script>運行結(jié)果 ?yuanjianhang
1 <script> 2 var i = 'yuanjianhang'; 3 function myloveName() { 4 5 i = 'guanxi'; 6 alert(i); 7 } 8 myloveName(); 9 </script>運行結(jié)果 ?guanxi
代碼分析 function內(nèi)i沒加var 代表全局變量,所以alert(i)在變量賦值之前,輸出yuanjianhang
1 <script> 2 i = 'yuanjianhang'; 3 function myloveName() { 4 a = 'guanxi'; 5 } 6 myloveName(); 7 alert(a); 8 //document.write(a); 9 </script>運行結(jié)果 ?guanxi ?代碼分析a為全局變量
PS:全局變量可以不聲明var 函數(shù)內(nèi)變量必須聲明var,在定義全局變量時加或不加var關(guān)鍵字沒什么影響;但在定義局部變量時如果不加var關(guān)鍵字javascript解釋程序會將其解釋為全局變量。
轉(zhuǎn)載于:https://www.cnblogs.com/hym-pcitc/p/6088667.html
總結(jié)
以上是生活随笔為你收集整理的js全局变量和局部变量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BSD和云 – 不可错过的BSD聚会
- 下一篇: 如何带领新人