最近中文字幕大全|熟女少妇精品一区二区|国产网红主播精品一区|日本一区二区精品理论电影|欧洲少妇无码精品视频在线|久久国产精品永久免费网站|人妻无码久久一区二区免费麻豆|国产日韩欧美一区二区在线高清

十二年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
小程序
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

函數(shù)聲明與函數(shù)表達(dá)式

百恒網(wǎng)絡(luò) 2012-09-03 4537

到目前為止,我們一直沒有對函數(shù)聲明和函數(shù)表達(dá)式加以區(qū)別。而實(shí)際上,解析器在向執(zhí)行環(huán)境中加載數(shù)據(jù)時,對函數(shù)聲明和函數(shù)表達(dá)式并非一視同仁。解析器會率先讀取函數(shù)聲明,并使其在執(zhí)行任何代碼之前可用(可以訪問);至于函數(shù)表達(dá)式,則必須等到解析器執(zhí)行到它所在的代碼行,才會真正被解釋執(zhí)行。請看下面的例子:

alert( sum (10,10));

function sum (numl, num2){

return numl+num2;

}

以上代碼完全可以正常運(yùn)行。因?yàn)樵诖a開始執(zhí)行之前,解析器就已經(jīng)讀取函數(shù)聲明并將其添加到執(zhí)行環(huán)境中了。如果像下面例子所示的,把上面的函數(shù)聲明政為變量初始化方式(即使用函數(shù)表達(dá)式),就會在執(zhí)行期間導(dǎo)致錯誤:

alert( sum (10,10));

var sum = function{num1,num2){

return numl+num2;

};

以上代碼之所以會在運(yùn)行期間產(chǎn)生錯誤,原因在于函數(shù)位于一個初始化語句中,而不是一個函數(shù)聲明。換句話說,在執(zhí)行到函數(shù)所在的語句之前,變量sum中不會保存有對函數(shù)的引用;而且,由于第一行代碼就會導(dǎo)致“unexpected identifier”(意外標(biāo)識符)錯誤,實(shí)際上也不會執(zhí)行到下一行。

除了什么時候可以通過變量訪問函數(shù)這一點(diǎn)區(qū)別之外,函數(shù)聲明與函數(shù)表達(dá)式的語法其實(shí)是等價的。

南昌網(wǎng)站建設(shè)公司技術(shù)員提示:也可以同時使用函數(shù)聲明和函數(shù)表達(dá)式,例如:var sum = function sum(){}.不過,這種語法在safari中會導(dǎo)致錯誤.

希望對廣大站長或網(wǎng)站建設(shè)公司或從事企業(yè)網(wǎng)站建設(shè)的團(tuán)隊(duì)有所幫助,如對此不太理解的,可以與南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)技術(shù)部聯(lián)系。我們很高與廣大站長和網(wǎng)站建設(shè)公司技術(shù)人員分享我們的技術(shù)和經(jīng)驗(yàn)。


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×