在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ js遍歷一個數組,怎么在每次遍歷的時候發(fā)送一個異步請求,然后請求成功后在進行下一

js遍歷一個數組,怎么在每次遍歷的時候發(fā)送一個異步請求,然后請求成功后在進行下一步循環(huán)

js遍歷一個數組,怎么在每次遍歷的時候發(fā)送一個異步請求,然后請求成功后在進行下一步循環(huán)(主要是下一步循環(huán)調請求的時候需要使用上一次請求的數據),在線急等!!

回答
編輯回答
厭惡我

你可能需要了解一下數組迭代器。。。
上面說的有點偏題,其實樓主的問題,上面已經給了答案,只不過答案來的太直接,樓主其實想串行執(zhí)行一個與數組元素對應的方法,那就是個異步隊列,那這個的話,promise是最佳人選啊。

2017年5月12日 22:54
編輯回答
悶油瓶

學習以下javascript的Promiseasync...await...這個兩個知識。

2018年8月27日 17:50
編輯回答
脾氣硬
async function foo() {
    const time1 = 100;
    const time2 = await step1(time1);
    const time3 = await step2(time2);
}

step里return Promise對象

2017年2月11日 17:44
編輯回答
涼汐
function traverse (arr) {
  let i = 0
  let len = arr.length
  return function recursion (d) {
    if (i >= len) return Promise.resolve(d) // 最后一次請求的結果
    let data = arr[i++]
    // let params = { // data是循環(huán)的數據,d是上次請求返回的數據
    //   data,
    //   d
    // }
    return new Promise((resolve, reject) => { // promise替換成你的異步請求
      setTimeout(() => {
        resolve(data + d)
      }, 1000)
    }).then(d => { // 處理請求后的數據
      console.log(d)
      recursion(d) // 把請求后的數據傳給下一次調用
    })
  }
}

var arr = [1, 2, 3, 4]
var fun = traverse(arr)
fun(0).then(console) // 打印最后一次請求的結果
2017年11月27日 07:08