最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ECMAScript中函數(shù)function類型

 更新時(shí)間:2015年06月03日 10:43:59   投稿:hebedich  
這篇文章主要介紹了ECMAScript中函數(shù)function類型的相關(guān)資料,需要的朋友可以參考下

說(shuō)起來(lái)ECMAScript中上面最有意思,我想那莫過(guò)于函數(shù)了,有意思的根源,則在于函數(shù)實(shí)際上是對(duì)象。每個(gè)函數(shù)都是Function類型的實(shí)例,而且都與其他引用類型一樣具有屬性和方法。由于函數(shù)是對(duì)象,因此函數(shù)名實(shí)際上也是一個(gè)指向函數(shù)對(duì)象的指針,不會(huì)與某個(gè)函數(shù)綁定。函數(shù)通常是使用函數(shù)聲明語(yǔ)法定義的,如下例子:

復(fù)制代碼 代碼如下:

 function sum(num1,num2)
 {
    return num1+num2;
 }

這與下面使用函數(shù)表達(dá)式定義函數(shù)的方式幾乎相差無(wú)幾。

復(fù)制代碼 代碼如下:

 var sum=function(num1,num2)
 {
     return num1+num2;
 };

  以上代碼定了變量sum并將其初始化為一個(gè)函數(shù)。你們會(huì)注意到,function關(guān)鍵字后面沒(méi)有函數(shù)名。這是因?yàn)樵谑褂煤瘮?shù)表達(dá)式定義函數(shù)時(shí),沒(méi)有必要使用函數(shù)名(通過(guò)變量sum既可以引用函數(shù))。另外,還要注意函數(shù)末尾有一個(gè)分號(hào),就像聲明其他變量時(shí)一樣。

  最后一種定義函數(shù)的方式是使用Function構(gòu)造函數(shù)。Function構(gòu)造函數(shù)可以接受任意數(shù)量的參數(shù),但最后一個(gè)參數(shù)始終都會(huì)被看成函數(shù)體,而前面的參數(shù)則枚舉出了新函數(shù)的參數(shù)。如下例子:

復(fù)制代碼 代碼如下:

var sum=new Function("num1","num2","return num1+num2");//不推薦

  從技術(shù)角度講,這是一個(gè)函數(shù)表達(dá)式。但是,我們不推薦使用這種方法定義函數(shù), 因?yàn)檫@種語(yǔ)法會(huì)導(dǎo)致解析兩次代碼(第一次解析常規(guī)的ECMAScript代碼,第二次是解析傳入構(gòu)造函數(shù)中的字符串),從而影響性能。不過(guò),這種語(yǔ)法對(duì)于理解“函數(shù)是對(duì)象,函數(shù)名是指針”的概念都是非常直觀的。

由于函數(shù)名僅僅是指向函數(shù)的指針,因此函數(shù)名與包含對(duì)象指針的其他變量沒(méi)有什么不同。換句話說(shuō),一個(gè)函數(shù)可能會(huì)有多個(gè)名字,如下例子:

復(fù)制代碼 代碼如下:

function sum(num1,num2)
{
    return num1+num2;
}
alert(sum(10,10));//20
var anotherSum=sum;
alert(anotherSum(10,10));//20
sum=null;
alert(anotherSum(10,10));//20

  以上代碼首先定義了一個(gè)名為sum()的函數(shù),用于求兩個(gè)值的和。然后,有聲明了變量anotherSum,并將其設(shè)置為sum()相等(將sum的值賦給anotherSum)。注意,使用不帶圓括號(hào)的函數(shù)名是訪問(wèn)函數(shù)指針,而非調(diào)用函數(shù)。此時(shí),anotherSum和sum 就指向了同一個(gè)函數(shù),因此anotherSum()也可以被調(diào)用并返回結(jié)果。即使將sum設(shè)置為null,讓它與函數(shù)“斷絕關(guān)系”,但仍然可以證明正常調(diào)用anotherSum()。

以上所述就是本文的全部?jī)?nèi)容了,希望能夠?qū)Υ蠹覍W(xué)習(xí)javascript有所幫助。

相關(guān)文章

最新評(píng)論

溆浦县| 芦山县| 揭西县| 洛川县| 灵武市| 鱼台县| 邵武市| 延庆县| 丹巴县| 宣武区| 贺州市| 绥德县| 南京市| 绿春县| 沛县| 平和县| 宜宾县| 历史| 瓦房店市| 桦南县| 沾化县| 民丰县| 加查县| 晋宁县| 正安县| 厦门市| 彩票| 即墨市| 青州市| 正宁县| 周口市| 根河市| 无为县| 高台县| 如东县| 桑植县| 镇原县| 青阳县| 昌邑市| 老河口市| 大石桥市|