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

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

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

眼眸繁星 2019-03-27 19:15:18
每一个函数得出结果后渲染不同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,....  ];
查看完整描述

4 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

试试改造为PromiseGenerator..


查看完整回答
反对 回复 2019-04-10
?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

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

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

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


查看完整回答
反对 回复 2019-04-10
?
LEATH

TA贡献1936条经验 获得超6个赞

可以试一试async


查看完整回答
反对 回复 2019-04-10
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

如果那函数里面有异步操作,可以使用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]()

    }

}

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


查看完整回答
反对 回复 2019-04-10
  • 4 回答
  • 0 关注
  • 599 浏览
慕课专栏
更多

添加回答

举报

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