2007年4月13日 星期五

變數的宣告

JavaScript 的區域性變數通常是在函數中宣告,必須使用 var 宣告之;全域性變數則無須使用 var 宣告。

  • 區域性變數僅於所在函數中有效。
  • 全域性變數於該文件的所有 <script> 標籤中均有效。

範例:

<script>
var arms = 2   //arms是全域變數
legs = 2   //legs是全域變數
function init() {
 var heads = 1  //heads是區域變數
 eyes = heads * 2 //eyes是全域變數
}
init()
document.write("手臂有",arms,"隻<BR>")
document.write("腿有"+legs+"條<BR>")
document.write("頭有",heads,"個<BR>")
document.write("眼睛有"+eyes+"粒<BR>")
</script>

上例只會印出:

手臂有2隻
腿有2條

因為當執行到「頭有 1 個」的時候,JavaScript 會發生錯誤,而無法繼續執行下去!

  • 在函數外宣告的變數,無論是否使用保留字 var 宣告,均稱為全域變數。
  • 在函數內宣告的變數,如使用 var 宣告,則為區域變數;未使用 var 宣告,則仍視為全域變數。

沒有留言: