第一
複製程式碼 程式碼如下:
function fn(val1,val2) {
alert(val1+val2);
}
fn(1,2);
第二
複製程式碼 程式碼如下:
var fn=function() {
alert(val1+val2);
}
fn(1,2);
第三
複製程式碼 程式碼如下:
var fn=new Function("alert(val1+val2)");
fn(1,2);
上面三種方式邏輯上是等價的,但是還是有點小區別:區別一:例一中的'函式會在程式碼執行以前被載入到作用域中,而例二則是在程式碼執行到那一行的時候才會有定義;區別二:函式宣告會給函式指定一個名字,而函式表示式則是建立一個匿名函式,然後將這個匿名函式賦給一個變數;區別三:例三使用Function()構造 函式克隆函式,一般很少用,因為一個函式通常有多條語句組成,如果將他們以字串的形式作為引數傳遞,難免會使得程式碼的可讀性很差。