函數(shù):
為金沙等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及金沙網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、金沙網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!具名函數(shù)
匿名函數(shù)
一.函數(shù)定義
(1)函數(shù)聲明
函數(shù)聲明只能出現(xiàn)在程序或函數(shù)體內(nèi),
function fun(){
//函數(shù)體
}
(2)函數(shù)表達(dá)式
匿名函數(shù)表達(dá)式
var fun = function(){
//函數(shù)體
}
具名函數(shù)表達(dá)式
var fun = function f(){
//函數(shù)體
}
具名函數(shù)表達(dá)式的函數(shù)名只能在創(chuàng)建函數(shù)內(nèi)部使用
(3)函數(shù)構(gòu)造函數(shù)
Var fun = new Function(),一般不建議使用
二.函數(shù)調(diào)用方式:
(1)作為函數(shù)被調(diào)用,是由于函數(shù)后面加上()操作符來觸發(fā)的,用這種方式調(diào)用時(shí),函數(shù)的上下文就是全局的上下文,即window對(duì)象
(2)方法調(diào)用模式:一個(gè)函數(shù)是一個(gè)對(duì)象的屬性,當(dāng)這個(gè)函數(shù)被調(diào)用時(shí)候,這個(gè)函數(shù)就視為這個(gè)對(duì)象的一個(gè)方法。當(dāng)這個(gè)函數(shù)作為一個(gè)對(duì)象的方法被調(diào)用的時(shí)候,這個(gè)對(duì)象就成為這個(gè)函數(shù)的上下文。
函數(shù)的上下文的產(chǎn)生,并不由函數(shù)的定義來決定,而是由函數(shù)的調(diào)用來決定。
(3)構(gòu)造函數(shù)調(diào)用:想讓一個(gè)函數(shù)作為構(gòu)造器被調(diào)用,需要new關(guān)鍵字,this為創(chuàng)建的新對(duì)象
關(guān)于new的過程
1)創(chuàng)建一個(gè)空的對(duì)象,僅包含Object的屬性和方法。
2)將prototype中的屬性和方法創(chuàng)建一份引用,賦值給新對(duì)象
3)將this上的屬性和方法新建一份,賦值給新對(duì)象
4)返回this對(duì)象,忽略return 語句。
(4)apply/call調(diào)用:通過使用apply和call方法,可以用任何對(duì)象作為函數(shù)上下文,并將它顯性的操作
Apply(),接收兩個(gè)參數(shù),第一個(gè)參數(shù)作為函數(shù)上下文的對(duì)象,第二個(gè)參數(shù),一個(gè)參數(shù)數(shù)組
Call(),則是另一個(gè)簡(jiǎn)單的形式,第一個(gè)參數(shù)作為函數(shù)上下文的對(duì)象,第二個(gè)參數(shù)只需要傳遞參數(shù)列表來代替參數(shù)數(shù)組。
三.函數(shù)的屬性和方法
Function()的屬性:prototype
Function對(duì)象實(shí)例屬性:
(1)arguments:arguments對(duì)象是一種類數(shù)組對(duì)象,它包含所有傳遞給函數(shù)的參數(shù),arguments對(duì)象擁有名為callee的屬性,這個(gè)屬性指向的是當(dāng)前執(zhí)行的函數(shù),這個(gè)屬性可以一直用于在函數(shù)內(nèi)部獲取到函數(shù)自身。arguments對(duì)象擁有l(wèi)ength屬性,它給出的是在調(diào)用時(shí)發(fā)送給函數(shù)的參數(shù)數(shù)量。這個(gè)屬性已經(jīng)被js1.4中廢除。
(2)constructor
(3)length:而這個(gè)函數(shù)實(shí)例length屬性,提供的是已定義參數(shù)的數(shù)量,它可以獲得函數(shù)所需要的參數(shù)總數(shù)量。
Function對(duì)象實(shí)例方法:
(1)apply()
(2)call()
(3)toString()
四.匿名函數(shù),自調(diào)用的匿名函數(shù)表達(dá)式,自調(diào)用的匿名函數(shù)語句
五.函數(shù)可以無限地嵌套在其他函數(shù)內(nèi)部
在真正定義函數(shù)語句之前,可以在執(zhí)行時(shí)調(diào)用該函數(shù)語句,因?yàn)楹瘮?shù)聲明提升的作用。使用函數(shù)聲明語句的話,函數(shù)名稱和函數(shù)體均提前,使用函數(shù)定義表達(dá)式,js會(huì)將此代碼拆分兩行代碼分別執(zhí)行。先把變量名提升,函數(shù)的表達(dá)式仍然在原來的位置
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。