1. 程式人生 > >promise 實現依次迴圈 請求資料

promise 實現依次迴圈 請求資料

1、//通過遞迴
        //通過遞迴
//      function loopArray(fun){
//          fun().then(() => {
//              x++;
//              if(x<len){
//                  console.log("當前非同步完成了,可以進行下次迴圈");
//                  loopArray(x)
//              }
//          })
//      }


        var arr3=[1,2,3,4,5,6,7];
        var x=0;
        function ajax(str){
            return new Promise(function(resolve,resject){
                 setTimeout(function(){ //模擬ajax請求
                 console.log(str)
                 resolve();
                },1000)
            })
        }
        function loopArray(fun,str){
            fun(str).then(() => {
                x++;
                if(x<arr3.length){
                    loopArray(ajax,arr3[x])
                }
            })            
        }
        loopArray(ajax,arr3[0])