簡介
將腳本編寫為函式,就可以避免頁面載入時執行該腳本。 函式包含著一些代碼,這些代碼只能被事件激活,或者在函式被調用時才會執行 。
你可以在頁面中的任何位置調用腳本(如果函式嵌入一個外部的 .js 檔案,那么甚至可以從其他的頁面中調用)。函式在頁面起始位置定義,即 <head> 部分。
<html>
<head>
<script type="text/javascript">
function displaymessage() {
alert("Hello World!")
}
</script>
</head>
<body>
<form>
<input type="button" value="Click me!" onclick="displaymessage()">
</form>
</body>
</html>
假如上面的例子中的 alert("Hello world!!") 沒有被寫入函式,那么當頁面被載入時它就會執行。當用戶擊中按鈕時,腳本才會執行。我們給按鈕添加了 onClick 事件,這樣按鈕被點擊時函式才會執行。
創建函式的語法
function函式名 (var1, var2, ..., varX) {代碼... }
function函式名 (var1, var2, ..., varX) {代碼... }
var1, var2 等指的是傳入函式的變數或值。{ 和 } 定義了函式的開始和結束。
注意:無參數的函式必須在其函式名後加括弧:
function函式名 () { 代碼... }
function函式名 () { 代碼... }
注意:別忘記 JavaScript 中大小寫字母的重要性。"function" 這個詞必須是小寫的,否則 JavaScript 就會出錯。另外需要注意的是,必須使用大小寫完全相同的函式名來調用函式。
return 語句
return 語句用來規定從函式返回的值。
因此,需要返回某個值的函式必須使用這個 return 語句。
例子
下面的函式會返回兩個數相乘的值(a 和 b):
function prod(a, b) { x = a * breturn x }
function prod(a, b) { x = a * breturn x }
當您調用上面這個函式時,必須傳入兩個參數:
product = prod(2, 3)
product = prod(2, 3)
而從 prod() 函式的返回值是 6,這個值會存儲在名為 product 的變數中。
變數的生存期
當您在函式內聲明了一個變數後,就只能在該函式中訪問該變數。當退出該函式後,這個變數會被撤銷。這種變數稱為本地變數。您可以在不同的函式中使用名稱相同的本地變數,這是因為只有聲明過變數的函式能夠識別其中的每個變數。
如果您在函式之外聲明了一個變數,則頁面上的所有函式都可以訪問該變數。這些變數的生存期從聲明它們之後開始,在頁面關閉時結束。