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 宣告,則仍視為全域變數。

function 定義

function 為結構化程式設計的基礎,定義的 function 代表一段副程式。利用關鍵字 function 宣告函式名稱。 function 函式名稱(引數) {敘述} 若有多個引數(argument),須用逗號隔開。引數的個數可以用以下變數來取得: 函數名稱.arguments.length 引數的值可以用以下變數取得: 函數名稱.arguments[x]