为了账号安全,请及时绑定邮箱和手机立即绑定

在js怎么保证顺序依次执行数组里面的函数?

在js怎么保证顺序依次执行数组里面的函数?

一只甜甜圈 2018-07-14 21:02:59
每一个函数得出结果后渲染不同class,所以需要依次执行,并且有些需要传入参数,类似下面结构,怎么保证case1执行完后才执行case2,case个数不确定?  let case1 = function(){    console.log('case11');   }  let case2 = function(){    console.log('case22');    }  let case3 = function(){    console.log('case33');   }  const caseList = [     case1,case2,case3,....   ];
查看完整描述

3 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

试试改造为PromiseGenerator..

查看完整回答
反对 回复 2018-07-15
?
千万里不及你

TA贡献1784条经验 获得超9个赞

如果那函数里面有异步操作,可以使用Promise,如果没有,就会顺序执行

for(let i =0; i <= arr.length; i ++){
    new Promise((resolve, reject) => {
        resolve(arr[i]())
    })
}

或者可以尝试一下async和await

async function activeClass() {
    for(let i =0; i <= arr.length; i ++){
        await arr[i]()
    }
}

以上思路大概就这样,具体代码实现看自己,帮你写个伪代码


查看完整回答
反对 回复 2018-07-15
?
狐的传说

TA贡献1804条经验 获得超3个赞

最粗暴的方法就是封装回调函数

promise和generator是一个优雅一些的解决方法。

但是,如果你的函数里面没有异步操作,依此调用那就肯定是顺序执行的了。


查看完整回答
反对 回复 2018-07-15
  • 3 回答
  • 0 关注
  • 1790 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信