JavaScript:將函數(shù)作為參數(shù)傳入,作為回調(diào)函數(shù)
2 回答
慕哥9229398
TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個(gè)贊
調(diào)用函數(shù)時(shí), 傳遞入的參數(shù)與順序必須按照函數(shù)聲明來排列, 所以調(diào)用doSomeThing時(shí):
| 123456789101112131415 | function doSomething(args,callback){ somethingComplicated(args); callback();}//第一個(gè)參數(shù)如果不需要傳遞,可設(shè)置為null//function onEnd(){} 這種方法通常是聲明一個(gè)函數(shù), 將函數(shù)作為參數(shù)傳遞可直接傳遞函數(shù)名稱,或者傳遞匿名函數(shù)//傳遞函數(shù)名稱function onEnd(){//code}doSomething(null, onEnd);//傳遞匿名函數(shù)doSomething(null,function(){ compute();}); |
MYYA
TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊
你可以改寫doSomething函數(shù)的實(shí)現(xiàn),如果第一個(gè)入?yún)⑹呛瘮?shù)就認(rèn)為是回調(diào)函數(shù),要看你想實(shí)現(xiàn)什么功能。
| 1234567 | function doSomething(args,callback){ somethingComplicated(args); if(arguments.length==1 && 'function'==typeof args){ callback = args; } if(callback) callback();} |
- 2 回答
- 0 關(guān)注
- 770 瀏覽
添加回答
舉報(bào)
0/150
提交
取消
