方法:1、用「函數名(參數,參數)」語句調用;2、作為物件的方法調用,語法「物件名.方法名()」;3、用call或apply調用,語法「函數名.call|apply(參數,參數)」;4、用new指令,語法「new 函數名(參數,參數)」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
JavaScript 提供了 4 種函數呼叫:一般形式的函數呼叫、作為物件的方法呼叫、使用 call 和 apply 動態呼叫、使用 new 間接呼叫。
1、一般形式的函數呼叫
在預設狀態下,函數是不會被執行的。使用小括號()可以啟動並執行函數。在小括號中可以包含零個或多個參數,參數之間透過逗號進行分隔。
在下面範例中,使用小括號呼叫函數,然後直接把回傳值傳入函數,進行第二次運算,這樣可以節省兩個暫存變數。
function f(x,y) { //定义函数 return x * y; //返回值 } console.log(f(f(5,6), f(7,8))); //返回1680。重复调用函数
2、作為物件的方法呼叫
#在 JavaScript 中你可以將函數定義為物件的方法。
以下實例建立了一個物件(myObject), 物件有兩個屬性(firstName 和 lastName), 及一個方法(fullName)
var myObject = { firstName:"John", lastName: "Doe", fullName: function () { return this.firstName + " " + this.lastName; } } myObject.fullName(); // 返回 "John Doe"
#3、使用call 和apply 動態呼叫
call 和apply 是Function 的原型方法,它們能夠將特定函數當作一個方法綁定到指定物件上,並進行呼叫。具體用法如下:
function.call(thisobj, args...)
function.apply(thisobj, [args])
function 表示要呼叫的函式;參數thisobj 表示綁定對象,即this 指涉的對象;參數args 表示要傳遞給被呼叫函數的參數。 call 方法可以接收多個參數列表,而 apply 只能接收一個數組或偽類數組,數組元素將作為參數列表傳遞給被呼叫的函數。
下面範例使用 call 動態呼叫函數 f,並傳入參數值 3 和 4,傳回運算值。
function f(x,y) { //定义求和函数 return x + y; } console.log(f.call (null, 3, 4)); //返回7
all 和 apply 方法的主要功能如下:
#呼叫函數。
修改函數體內的 this 指涉物件。
為物件綁定方法。
跨越限制呼叫不同類型的方法。
4、new 指令間接呼叫
#使用new 指令可以實例化對象,這是它的主要功能,但在創建物件的過程中會啟動並運行函數。因此,使用 new 命令可以間接呼叫函數。
下面範例簡單示範如何用 new 指令,把傳入的參數值顯示在控制台。
function (x,y) { //定义函数 console.log("x =" + x + ", y =" + y); } new f(3,4);
【推薦學習:javascript進階教學】
以上是javascript如何呼叫函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!