<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • js 徹底理解回調(diào)函數(shù)

          2021-4-26    前端達(dá)人

          一、前奏

          在談回調(diào)函數(shù)之前,先看下下面兩段代碼:
          不妨猜測(cè)一下代碼的結(jié)果。

          function say (value) {
              alert(value);
          } alert(say); alert(say('hi js.')); 
          
          • 1
          • 2
          • 3
          • 4
          • 5

          如果你測(cè)試了,就會(huì)發(fā)現(xiàn):

          只寫變量名 say 返回的將會(huì)是 say方法本身,以字符串的形式表現(xiàn)出來(lái)。
          而在變量名后加()如say()返回的就會(huì)使say方法調(diào)用后的結(jié)果,這里是彈出value的值。 
          
          • 1
          • 2

          二、js中函數(shù)可以作為參數(shù)傳遞

          再看下面的兩段代碼:

          function say (value) { alert(value);
          } function execute (someFunction, value) { someFunction(value);
          }
          execute(say, 'hi js.'); 
          
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7

          function execute (someFunction, value) { someFunction(value);
          }
          execute(function(value){alert(value);}, 'hi js.'); 
          
          • 1
          • 2
          • 3
          • 4

          上面第一段代碼是將say方法作為參數(shù)傳遞給execute方法
          第二段代碼則是直接將匿名函數(shù)作為參數(shù)傳遞給execute方法

          實(shí)際上:

          function say (value) { alert(value);
          } // 注意看下面,直接寫say方法的方法名與下面的匿名函數(shù)可以認(rèn)為是一個(gè)東西 // 這樣再看上面兩段代碼是不是對(duì)函數(shù)可以作為參數(shù)傳遞就更加清晰了 say; function (value) { alert(value);
          } 
          
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          這里的say或者匿名函數(shù)就被稱為回調(diào)函數(shù)。  
          
          • 1

          三、回調(diào)函數(shù)易混淆點(diǎn)——傳參

          如果回調(diào)函數(shù)需要傳參,如何做到,這里介紹兩種解決方案。

          • 將回調(diào)函數(shù)的參數(shù)作為與回調(diào)函數(shù)同等級(jí)的參數(shù)進(jìn)行傳遞


          • 回調(diào)函數(shù)的參數(shù)在調(diào)用回調(diào)函數(shù)內(nèi)部創(chuàng)建


          四、寫在最后

          回調(diào)函數(shù)應(yīng)用場(chǎng)景多用在使用 js 寫組件時(shí),尤其是組件的事件很多都需要回調(diào)函數(shù)的支持。

          轉(zhuǎn)自:csdn 作者:dkvirus


          藍(lán)藍(lán)設(shè)計(jì)www.sdgs6788.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)


          日歷

          鏈接

          個(gè)人資料

          存檔

          AV无码久久久久不卡网站下载 | 久久综合视频网| 欧洲精品久久久av无码电影| 久久久久久免费视频| 亚洲精品美女久久久久99小说 | 理论片午午伦夜理片久久| 色综合久久最新中文字幕| 久久99热精品| 九九99精品久久久久久| 国产精品天天影视久久综合网| 久久99国产综合精品| 国产精品欧美久久久天天影视| 久久午夜电影网| 久久免费视频网站| 久久午夜福利电影| 香蕉久久久久久狠狠色| 无码精品久久久天天影视| 久久精品人人做人人爽电影蜜月 | 亚洲国产精品成人久久蜜臀| 久久亚洲精品无码播放| 国内精品伊人久久久影院| 色综合久久无码五十路人妻| 97久久久精品综合88久久| 青青草国产精品久久| 日本加勒比久久精品| 午夜欧美精品久久久久久久| 久久久91精品国产一区二区三区 | 狠狠色丁香久久婷婷综合蜜芽五月| 久久久久se色偷偷亚洲精品av| 久久国产色AV免费观看| 国产999精品久久久久久| 日日狠狠久久偷偷色综合96蜜桃| 日韩欧美亚洲综合久久| 久久久久久九九99精品| 久久精品国产只有精品66 | 99久久99这里只有免费的精品| 国产成人久久精品麻豆一区| 精品国产乱码久久久久软件| 91久久香蕉国产熟女线看| 亚洲AV无码1区2区久久| 久久久久97国产精华液好用吗|