版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、The JavaScript函數(shù)Function Part11Content基本原理作用域scope閉包closure21.1 這是函數(shù)嗎?function(a,b) return a+b;31.2 函數(shù)是在定義時:函數(shù)名稱函數(shù)的預(yù)期參數(shù)函數(shù)體函數(shù)的作用域41.3 函數(shù)還是在執(zhí)行時參數(shù)對象callerthis51.2.1 函數(shù)名稱(function() alert()()var car = function()alert()function bingo()alert()var car = f
2、unction acar()alert()6 1.2.2 函數(shù)的預(yù)期參數(shù)function add(a,b) console.log(arguments.callee.length) /2console.log(add.length) /2add(1,2,3)function.length71.2 函數(shù)是在定義時:函數(shù)名稱函數(shù)的預(yù)期參數(shù)函數(shù)體函數(shù)的作用域8 1.3.1 參數(shù)對象argumentsfunction add(a,b) console.log(arguments.length) /3 console.log(arguments0) /1 console.log(argu
3、ments.callee = add) /trueconsole.log(add.length) /2add(1,2,3)9 1.3.2 callerfunction.callerfunction x(value) console.log(x.caller)function caller()x.call();var anotherCaller=function()x(); x();caller();anotherCaller();nullfunction caller() x.call(); function () x(); 101.3 函數(shù)還是在執(zhí)行時參數(shù)對象callerthis112.1作
4、用域符號被定義的區(qū)間包括局部變量,全局變量,函數(shù)參數(shù)和閉包變量總之,不用this就可以訪問的變量都是作用域中的變量作用域是鏈?zhǔn)降膙ar name = dog ,function callName(name)var name = cat alert(name)callName( bird ) / cat122.2作用域定義function mine(a,b)if(ab) var t=b-a return tmine(2,5) / 3c:函數(shù)開始c+:函數(shù),塊,類,命名空間java:函數(shù),塊js:函數(shù)內(nèi)部var name = dogfunction callName(name) alert(nam
5、e) var name = cat alert(name) callName()132.3作用域查找function factory() var name = dog;var intro = function()alert(I am + name);return intro;function app()var name = cat;var func = factory();func();app();argumentsargumentsname:dogintro:functionfactory:functionapp:function142.3作用域查找“JS中的函數(shù)運(yùn)行在它們被定義的作用域里,
6、而不是它們被執(zhí)行的作用域里.”JS權(quán)威指南153.1閉包 closurefunction x( value ) return function() return value;var fooa = x(5);var foob = x(8);console.log(fooa();console.log(foob();/output/5855 ?58 ?88 ?163.2閉包 定義如果某個作用域內(nèi)部有其他的作用域,則該作用域會被保留(即便該作用域內(nèi)部的代碼已經(jīng)執(zhí)行完成),直到內(nèi)部的函數(shù)也被釋放173.3閉包的作用function x( value ) return function() return
7、 value;type = “dog”var intro=function()var sound=“”if(type = “dog”) sound=“wa.wanf”;else if(type = “cat”) sound=“miao.”;intro = x(sound);return xtype = “dog”var intro=function()var sound=“”if(type = “dog”) sound=“wa.wanf”;else if(type = “cat”) sound=“miao.”;return x183.4閉包的危害function()var a,b,c,d,e,f,g;var dom/do stuffdom.onclick=function(e)console.log(e.target)function()var a,b,c,d,e,f,g;var dom/do stuffdom.onclick=domClick;function domC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園教學(xué)樓智慧校園系統(tǒng)安裝合同
- 太陽能項目合同發(fā)電效率
- 劇院租賃合同模板
- 保安設(shè)備融資租賃合同示范
- 醫(yī)療設(shè)備安裝工程總承包合同
- 農(nóng)業(yè)設(shè)施保溫施工合同
- 紡織服裝展位租賃協(xié)議
- 珠寶首飾存儲續(xù)約合同
- 生態(tài)工業(yè)園房產(chǎn)購置合同模板
- 真石漆施工合同私人會所外墻翻新
- 剩余樁基(興和龍虎改造橋天橋)地鐵保護(hù)方案(報地保)
- 九年義務(wù)教育小學(xué)數(shù)學(xué)教學(xué)大綱(人教版)
- 重慶大學(xué)--數(shù)學(xué)模型--數(shù)學(xué)實驗作業(yè)七
- CFG樁計算表格(2012新規(guī)范)
- 二年級數(shù)學(xué)興趣小組活動記錄全記錄
- 中藥硬膏管理規(guī)定、操作流程及評分標(biāo)準(zhǔn)(共3頁)
- 單值移動極差圖(空白表格)
- 電鍍生產(chǎn)工序
- 塔城地區(qū)事業(yè)單位專業(yè)技術(shù)各等級崗位基本任職資格條件指導(dǎo)意見
- 初中語文課外古詩文董仲舒《春秋繁露》原文及翻譯
- (完整)(電子商務(wù)軟件研發(fā)及產(chǎn)業(yè)化建設(shè)項目)監(jiān)理月報(201202)
評論
0/150
提交評論