js 區域性變數 全域性變數 閉包

2021-07-23 15:02:31 字數 1137 閱讀 3554

什麼是變數?

變數的命名規範:

1、變數名必須以字母.下標符號"_"或者"$"開頭;

2、變數名的長度不得超過255個字元;、

3、變數名中不可以使用空格,並且開頭不得以數字開頭; 4、

不用使用指令碼語言中保留的關鍵字及保留符號作為變數名

;5、變數名是區分大小寫的,var a=1和var a=1;

指在程式中只在特定過程或函式中可以訪問的變數。區域性變數是相對於全域性變數而言的。在物件導向語言中,一般只使用區域性變數。物件導向程式設計是現在普遍採用的是軟體開發方法,因此無需考慮是區域性變數還是全域性變數,說到變數,往往都是區域性變數。

在c語言等面向過程語言中,區域性變數可以和全域性變數重名,但是區域性變數會遮蔽全域性變數。在函式內引用這個變數時,會用到同名的區域性變數,而不會用到全域性變數。

變數分為區域性與全域性,區域性變數又可稱之為內部變數。由某物件或某個函式所建立的變數通常都是區域性變數,只能被內部引用,而無法被其它物件或函式引用。

全域性變數既可以是某物件函式建立,也可以是在本程式任何地方建立。全域性變數是可以被本程式所有物件或函式引用。乙個區域性變數在被其它物件引用時,會是乙個空值。但全域性變數卻不會出現這種情況。

所謂閉包,簡單理解就是子函式使用父函式的區域性變數;所以

閉包 全域性變數與區域性變數

報錯 unboundlocalerror local variable t referenced before assignment 在 python 中,如果乙個函式使用了和全域性變數相同的名字且改變了該變數的值,那麼該變數就會變成區域性變數,那麼就會造成在函式中我們沒有進行定義就引用了,所以會報...

js區域性變數 全域性變數

在js中如果用var來定義乙個變數,如果該變數被定義在function或者其他迴圈體內,則變數為區域性變數,並且該變數不會受到同名全域性變數的影響,也不會影響同名的全域性變數。如果不用var來定義變數而直接拿乙個變數來使用則該變數會被自己定義為全域性變數,無論該變數被定義在任何位置,如果在funct...

全域性變數 靜態全域性變數 靜態區域性變數 區域性變數

全域性和靜態變數都在堆裡。這句話應該錯了,應該是放在常量資料段 全域性變數的作用範圍是整個程式 如果程式是多個檔案,必須在其他的檔案中說明 靜態變數的作用範圍要看靜態變數的位置,如果在函式裡,則作用範圍 就是這個函式。靜態全域性變數,只在本檔案可以用,雖然整個程式包含多個檔案,但靜態全域性變數只能用...