1. 程式人生 > >(2)JavaScript函數

(2)JavaScript函數

car tel 包含 onclick class () bsp type inner

函數是被事件驅動的,或者當它們被調用時執行的可重復使用的代碼塊。

示例

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <script>
 5 function myFunction()
 6 {
 7     alert("Hello World!");
 8 }
 9 </script>
10 </head>
11  
12 <body>
13 <button onclick="myFunction()">Try it</button>
14 </body>
15
</html>

JavaScript函數語法

函數就是包含在花括號中的代碼塊,使用關鍵字funtion進行聲明

function functionname()
{
執行代碼
}

當函數被調用時,執行函數體內的代碼。

或者可以由事件觸發(例如用戶點擊按鈕),並且可以由JavaScript在任何位置進行調用。

調用帶參數的函數

調用函數時,可以向其傳遞參數,參數可以在函數體內被調用,參數個數可以是任意個,中間使用逗號隔開。

聲明函數時,把參數作為變量來聲明:

function myFunction(var1,var2)
{
代碼
}

變量和參數必須以一致的順序出現。第一個變量就是第一個被傳遞的參數的給定的值,以此類推。

帶有返回值的函數

有時我們希望函數能返回值給調用它的地方,通過使用return語句就可以實現,return語句會返回一個值,同時讓函數結束。

function myFunction()
{
    var x=5;
    return x;
}

上面的函數會返回值5。

示例:

function myFunction(a,b)
{
    return a*b;
}
 
document.getElementById("demo").innerHTML=myFunction(4,3);

"demo" 元素的 innerHTML 將是:12

僅僅希望退出函數時 ,也可使用 return 語句。返回值是可選的:

function myFunction(a,b)
{
    if (a>b)
    {
        return;
    }
    x=a+b
}

如果 a 大於 b,則上面的代碼將退出函數,並不會計算 a 和 b 的總和。

局部JavaScript變量

在函數中聲明的變量,其作用域是局部的,只有在該函數中可以使用。

不同函數可以聲明相同變量名的局部變量,因為只有聲明過該變量的函數才能識別出該變量。

在函數結束時,局部變量會被刪除。

全局 JavaScript 變量

在函數外部聲明的變量是全局變量,在網頁上的所有腳本和函數都可以訪問它。

JavaScript 變量的生存期

JavaScript變量的生命周期從它們被聲明的時候開始,局部變量在函數結束執行之後被刪除,全局變量在頁面被關閉時被刪除。

向未聲明的 JavaScript 變量分配值

如果把值賦給尚未聲明的變量,該變量將自動作為全局變量聲明,即使它是在函數中被賦值的。

示例:

carname="Volvo";

將聲明一個全局變量carname。

(2)JavaScript函數