javascript函數(shù)命名的三種方式及區(qū)別介紹

字號(hào):


    下面小編就為大家?guī)?lái)一篇javascript函數(shù)命名的三種方式及區(qū)別介紹。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,給大家做個(gè)參考。
    javascript函數(shù)命名的三種方式及區(qū)別介紹
    第一
    代碼如下:
    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);
    上面三種方式邏輯上是等價(jià)的,但是還是有點(diǎn)小區(qū)別:區(qū)別一:例一中的函數(shù)會(huì)在代碼執(zhí)行以前被加載到作用域中,而例二則是在代碼執(zhí)行到那一行的時(shí)候才會(huì)有定義;區(qū)別二:函數(shù)聲明會(huì)給函數(shù)指定一個(gè)名字,而函數(shù)表達(dá)式則是創(chuàng)建一個(gè)匿名函數(shù),然后將這個(gè)匿名函數(shù)賦給一個(gè)變量;區(qū)別三:例三使用Function()構(gòu)造 函數(shù)克隆函數(shù),一般很少用,因?yàn)橐粋€(gè)函數(shù)通常有多條語(yǔ)句組成,如果將他們以字符串的形式作為參數(shù)傳遞,難免會(huì)使得代碼的可讀性很差。 
    以上這篇javascript函數(shù)命名的三種方式及區(qū)別介紹就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考