js for迴圈巢狀非同步函式

2022-07-08 08:54:13 字數 575 閱讀 7436

最近專案裡遇到乙個問題:js 中for迴圈裡面巢狀了非同步函式,需求是每次執行迴圈中的非同步函式時必須是在上次迴圈的

非同步函式執行完之後;

解決方案針對不同情景如下:

關鍵點:vue 中的 watch 物件的使用

情景一:每次非同步迴圈中,需要根據非同步資料來進行使用者的互動然後進行下次的非同步迴圈;(如:三次的非同步迴圈,每次

迴圈的時候需要把得到的資料讓使用者選擇,選擇完之後進行下次的非同步迴圈)

方法: 在 watch 裡面監聽每次迴圈的索引,當每次非同步函式執行完之後改變索引 (如:+1),這個時候在執行

非同步函式即可;

情景二:每次的非同步迴圈中,不需要進行使用者的互動只需要按照每次非同步迴圈的順序,確定得到非同步資料的順序;

方法:使用for迴圈,在 watch 物件裡面宣告乙個對應迴圈執行次數的陣列,每次根據執行的索引來填充

相應的位置資料(如:第二次非同步迴圈先結束的話就在陣列 arr[1]的位置填充非同步資料,第一次非同步執行完後

就在arr[0]的位置填充資料);就這樣保證了非同步迴圈數的有序性;

總結:對於新上手的框架需要多看多學,如果不懂watch的話,問題很難解決

js for迴圈例項

1.求1 100的寄數和?2.奇數求和 var ppt 0 for var i 1 i 100 i 2 2.求1 100的偶數和 var num 0 for var i 0 i 100 i 2 document.write 偶數和 num 3.總和 var num1 0 for var i 0 i ...

js for迴圈 while迴圈介紹

名稱 作用初始化變數 通常被用於初始化乙個計數器,該表示式可以使用 var 關鍵字宣告新的變數,這 個變數幫我們來記錄次數。條件表示式 用於確定每一次迴圈是否能被執行。如果結果是 true 就繼續迴圈,否則退出循 環。操作表示式 用於確定每一次迴圈是否能被執行。如果結果是 true 就繼續迴圈,否則...

js FOR迴圈效率問題

引 每個接觸js的開發人員都不可避免的與for迴圈打交道,畢竟這是遍歷必不可少的工具之一。然而當迴圈次數比較大時,效率問題必須重視。在群眾,站長提出了這個話題,回去好好想了下,整理出來,大家一起討論討論。1.倒序比正序效率高?聽好多人說,倒序效率更高,好吧,做個實驗,讓事實說話 測試 複製 測試結果...