亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

javascript如何在foreach循環(huán)完成之后執(zhí)行一個(gè)回調(diào)函數(shù)

 更新時(shí)間:2023年11月24日 10:53:27   作者:Hansel.Wn  
forEach()是前端開(kāi)發(fā)中操作數(shù)組的一種方法,主要功能是遍歷數(shù)組,其實(shí)就是 for 循環(huán)的升級(jí)版,下面這篇文章主要給大家介紹了關(guān)于javascript如何在foreach循環(huán)完成之后執(zhí)行一個(gè)回調(diào)函數(shù)的相關(guān)資料,需要的朋友可以參考下

常規(guī)方法

代碼如下面demo所示,在foreach的回調(diào)函數(shù)中進(jìn)行判斷,當(dāng)循環(huán)到數(shù)組最后一位元素的時(shí)候,執(zhí)行回調(diào)函數(shù):

function callBack(){
	console.log('all done');
}

function f(){
    var count = 0;
    var arrTemp = [1, 2, 3];
    arrTemp.forEach((item, index, arr) => {
        count++;
        if(count === arr.length){
            this.callBack();
        }
    })    
}

f()

使用Promise實(shí)現(xiàn)

實(shí)際工作中,當(dāng)目標(biāo)數(shù)組的元素內(nèi)容比較復(fù)雜,在回調(diào)函數(shù)中沒(méi)有辦法進(jìn)行簡(jiǎn)單的邏輯判斷時(shí),可以使用Promise.all 方法實(shí)現(xiàn):

Promise.all(
    [1,2,3].map((item) => {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                console.log("in async function, item is" + item);
                resolve(item)
            },Math.random()*2000)
        })
    })
).then((result) => {
    console.log("all done");
    console.log("result are:", result);
})

總結(jié)

到此這篇關(guān)于javascript如何在foreach循環(huán)完成之后執(zhí)行一個(gè)回調(diào)函數(shù)的文章就介紹到這了,更多相關(guān)foreach循環(huán)完成后執(zhí)行回調(diào)函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • javascript數(shù)組中的reduce方法和pop方法

    javascript數(shù)組中的reduce方法和pop方法

    這篇文章主要介紹了javascript數(shù)組中的reduce方法和pop方法,文章內(nèi)容介紹詳細(xì),具有一定的參考價(jià)值需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-03-03
  • js判斷手機(jī)端(Android手機(jī)還是iPhone手機(jī))

    js判斷手機(jī)端(Android手機(jī)還是iPhone手機(jī))

    現(xiàn)在使用手機(jī)上網(wǎng)的人越來(lái)越多,一些下載網(wǎng)站會(huì)通過(guò)判斷不同系統(tǒng)手機(jī)來(lái)訪問(wèn)不同網(wǎng)頁(yè),比如iPhone和Android。下面我們就來(lái)介紹一下如何用javascript判斷iPhone或Android手機(jī)訪問(wèn)
    2015-07-07
  • 使用微信小程序開(kāi)發(fā)彈出框應(yīng)用實(shí)例詳解

    使用微信小程序開(kāi)發(fā)彈出框應(yīng)用實(shí)例詳解

    本文通過(guò)實(shí)例代碼給大家介紹了使用微信小程序開(kāi)發(fā)彈出框功能,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-10-10
  • IE6彈出“已終止操作”的解決辦法

    IE6彈出“已終止操作”的解決辦法

    導(dǎo)致這個(gè)問(wèn)題產(chǎn)生的原因,一般是因?yàn)閖s(一個(gè)比較復(fù)雜的js)寫(xiě)在body里面,在body元素加載完之前調(diào)用出現(xiàn)問(wèn)題。顯然,解決該問(wèn)題的方法就是將這一段js放在body元素解析完畢之后。
    2010-11-11
  • babel7按需加載polyfill示例詳解

    babel7按需加載polyfill示例詳解

    這篇文章主要為大家介紹了babel7按需加載polyfill示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • js實(shí)現(xiàn)表單項(xiàng)的全選、反選及刪除操作示例

    js實(shí)現(xiàn)表單項(xiàng)的全選、反選及刪除操作示例

    這篇文章主要介紹了js實(shí)現(xiàn)表單項(xiàng)的全選、反選及刪除操作,結(jié)合實(shí)例形式分析了基于dedecms后臺(tái)使用js實(shí)現(xiàn)表單項(xiàng)的全選、反選及刪除相關(guān)操作技巧,需要的朋友可以參考下
    2020-06-06
  • JavaScript 對(duì)象深入學(xué)習(xí)總結(jié)(經(jīng)典)

    JavaScript 對(duì)象深入學(xué)習(xí)總結(jié)(經(jīng)典)

    JavaScript中,除了五種原始類(lèi)型(即數(shù)字,字符串,布爾值,null,undefined)之外的都是對(duì)象了,所以,不把對(duì)象學(xué)明白怎么繼續(xù)往下學(xué)習(xí)呢?本篇文章給大家分享javascript對(duì)象深入學(xué)習(xí)總結(jié),小伙伴們跟著小編一起深入學(xué)習(xí)吧
    2015-09-09
  • javascript漢字拼音互轉(zhuǎn)的簡(jiǎn)單實(shí)例

    javascript漢字拼音互轉(zhuǎn)的簡(jiǎn)單實(shí)例

    下面小編就為大家?guī)?lái)一篇javascript漢字拼音互轉(zhuǎn)的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-10-10
  • JS簡(jiǎn)單實(shí)現(xiàn)動(dòng)畫(huà)彈出層效果

    JS簡(jiǎn)單實(shí)現(xiàn)動(dòng)畫(huà)彈出層效果

    本文給大家介紹的是是一款javascript彈出層特效,支持點(diǎn)擊觸發(fā)js彈出層,滑過(guò)觸發(fā)js彈出層,帶動(dòng)畫(huà)效果js彈出層,可自定義函數(shù)回調(diào)js彈出層。
    2015-05-05
  • JavaScript?setTimeout和setInterval的用法與區(qū)別詳解

    JavaScript?setTimeout和setInterval的用法與區(qū)別詳解

    Javascript的setTimeOut和setInterval函數(shù)應(yīng)用非常廣泛,它們都用來(lái)處理延時(shí)和定時(shí)任務(wù),下面這篇文章主要給大家介紹了關(guān)于JavaScript?setTimeout和setInterval的用法與區(qū)別,需要的朋友可以參考下
    2022-04-04

最新評(píng)論