JavaScript 函數
javascript 函數
javascript 函數是被設計為執行特定任務的代碼塊。
javascript 函數會在某代碼調用它時被執行。
1. javascript 函數語法
javascript 函數通過 function 關鍵詞進行定義,其后是函數名和括號 ()。
函數名可包含字母、數字、下劃線和美元符號(規則與變量名相同)。
圓括號可包括由逗號分隔的參數:
(參數 1, 參數 2, ...)
由函數執行的代碼被放置在花括號中:{}
function name(參數 1, 參數 2, 參數 3) { 要執行的代碼 }
函數參數(function parameters)是在函數定義中所列的名稱。
函數參數(function arguments)是當調用函數時由函數接收的真實的值。
在函數中,參數是局部變量。
在其他編程語言中,函數近似程序(procedure)或子程序(subroutine)。
范例
function myfunction(p1, p2) {
// 該函數返回 p1 和 p2 的乘積
return p1 * p2;
}
function myfunction(p1, p2) { // 該函數返回 p1 和 p2 的乘積 return p1 * p2; }
2. 函數調用
函數中的代碼將在其他代碼調用該函數時執行:
- 當事件發生時(當用戶點擊按鈕時)
- 當 javascript 代碼調用時
- 自動的(自調用)
3. 函數返回
當 javascript 到達 return 語句,函數將停止執行。
如果函數被某條語句調用,javascript 將在調用語句之后“返回”執行代碼。
函數通常會計算出返回值,這個返回值會返回給調用者。
范例
計算兩個數的乘積,并返回結果:
// 調用函數,返回值被賦值給 x var x = myfunction(7, 8); function myfunction(a, b) { // 函數返回 a 和 b 的乘積 return a * b; }
x 的結果將是:
56
4. 為何使用函數?
您能夠對代碼進行復用:只要定義一次代碼,就可以多次使用它。
您能夠多次向同一函數傳遞不同的參數,以產生不同的結果。
范例
把華氏度轉換為攝氏度:
function tocelsius(fahrenheit) { return (5/9) * (fahrenheit-32); } document.getelementbyid("demo").innerhtml = tocelsius(77);
5. () 運算符調用函數
使用上面的例子,tocelsius 引用的是函數對象,而 tocelsius() 引用的是函數結果。
范例
訪問沒有 () 的函數將返回函數定義:
function tocelsius(fahrenheit) { return (5/9) * (fahrenheit-32); } document.getelementbyid("demo").innerhtml = tocelsius;
6. 用作變量值的函數
函數的使用方法與變量一致,在所有類型的公式、賦值和計算中。
范例
使用變量來存儲函數的值:
var x = tocelsius(77); var text = "the temperature is " + x + " celsius";
您能夠把函數當做變量值直接使用:
var text = "the temperature is " + tocelsius(77) + " celsius";
7. 局部變量
在 javascript 函數中聲明的變量,會成為函數的局部變量。
局部變量只能在函數內訪問。
范例
// 此處的代碼不能使用 carname function myfunction() { var carname = "volvo"; // code here can use carname } // 此處的代碼可以使用 carname
由于局部變量只能被其函數識別,因此可以在不同函數中使用相同名稱的變量。
局部變量在函數開始時創建,在函數完成時被刪除。