首頁 >web前端 >js教程 >JavaScript中定義函數的三種方法_javascript技巧

JavaScript中定義函數的三種方法_javascript技巧

WBOY
WBOY原創
2016-05-16 16:10:091072瀏覽

在JavaScript的世界裡,定義函數的方法多種多樣,這正是JavaScript靈活性的體現,但是正是這個原因讓初學者摸不著頭腦,尤其對於沒有 語言基礎的同學。正所謂條條大道通羅馬,但是如果道路太多,會讓行路者不知所措,因為不知道走那條路才是正途,呵呵,廢話一大篇,閒言少敘,先看代碼:

複製程式碼 程式碼如下:

/*第一種方法,使用function語句,格式如下*/
function fn(){
  alert("這是使用function語句進行函數定義");
}
fn();

/*第二種方法,使用Function()建構子克隆函數*/
var F = new Function("a","b","alert(a b)");
F(a,b);

其實相當於以下程式碼:
function F(a,b){
  alert(a b);
}

/*第三種方法,使用函數直接量*/
var zhenn = function(){
  alert("zhenn");
}
zhenn();

其中用「function語句」和使用「函數直接量」來定義函數的方法似乎比較常見,也比較好理解,在此不多說。針對使用Function()建構函數克 隆函數,一般很少用,因為一個函數通常有多條語句組成,如果將他們以字串的形式作為參數傳遞,難免會使得程式碼的可讀性很差。

在這裡再順便提一下構造函數吧,其實從字面上理解,構造函數似乎也是函數,其實它並不是函數,而只是一種函數模型。舉個不恰當的例子,構造函數相當於一部剛組裝好的車子,無論遠看還是近看,它都是一部車子,但是還沒有加油(代表在使用前的一個必要步驟),所以它並不能啟動。如果想要這輛車子正常行駛,就必 須給它加上油,其實這個過程就等同於構造函數的實例化,否則它並不能正常運作!看下面這個範例:

複製程式碼 程式碼如下:

function Fn(){    //定義建構子  
  this.elem ="這裡是使用function()建構子定義函數,呵呵";  
  this.fn = function(){    
    alert("這是使用function()建構子定義函數,嘿嘿");  
  }
}
var f = new Fn();  //實例化
alert(f.elem);
f.fn();
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn