函式裡邊定義的變數是區域性變數,在函式外邊訪問不到; 全域性變數是在函式外邊的,在函式內外都可以被訪問。
var a =10;
function
test()
test()
; console.
log(a)
;//結果為100
console.
log(b)
;//報錯 b is not defind
可得:
因為a 是全域性變數所以在函式內部可以被訪問且被賦值,第一次列印結果為10;
執行函式後a的值變為100 ;
第三次列印在函式外邊,所以列印全域性變數a,值為10;
var a =10;
function
test()
test()
; console.
log(a)
;//列印結果為10
可得:
1.如果區域性變數的變數名和全域性變數名形同,在函式內部變數值全部指向區域性變數;
2.第5行結果為undefind;因為只要區域性變數a被宣告,a就指向區域性變數,但是列印在賦值之前,結果為undefind;
第二次列印結果在賦值之後 為100;
要想改變全域性變數a 的值,可以用window.a ;
3.第三次列印在函式外邊,所以列印全域性變數a,值為10;
js中的全域性變數和區域性變數
如何查詢全域性變數 最外層的函式和和最外層函式外面的變數都是全域性變數。因為函式是可以巢狀的,所以找全域性變數時,要找最外層函式 而且函式本身也是乙個變數,特殊變數,其名字就是變數名。沒有用 var宣告的變數,為全域性變數,即使位置在函式體內部 所有window物件的屬性也是全域性變數。var v ...
全域性變數和區域性變數
全域性變數 可以被不同的函式 類或檔案呼叫的變數,在函式外定義。區域性變數 只能在函式內使用,定義在函式內。區域性變數的使用 class myclass def myfun num 12 print myfun num num 正確 def myfun2 num num 1 print mufun ...
全域性變數和區域性變數
區域性變數 在方法中開闢的變數,只在方法中有效 區域性變數在定義時不會初始化,要顯式的給它乙個值 如未給它乙個初始值,雖然編譯的時候會通過,但是執行的時候會產生為初始化錯誤!方法呼叫 執行完,區域性變數便會自動釋放。在方法內的語句塊中建立的變數在編譯時假如未初始,如若使用,也會報未初始化錯誤!呼叫的...