您的位置:首页 > 大数据 > 人工智能

一种通过async/await实现函数同步执行的方式

2017-06-22 15:52 501 查看
const testArr = [
() => {
return new Promise((resolve, reject) => {
setTimeout(()=> {
alert(1);
resolve();
}, 300);
});
},
() => {
return new Promise((resolve, reject) => {
setTimeout(()=> {
alert(2);
resolve();
}, 500);
});
},
() => {
return new Promise((resolve, reject) => {
setTimeout(()=> {
alert(3);
resolve();
}, 100);
});
}
];

async function iterate(arr) {
let index = 0;
while (index < arr.length - 1) {
await arr[index]();
index += 1;
}
return arr[index]();
}

iterate(testArr);


建议在https://codepen.io/pen上执行查看,挂载https://cdn.bootcss.com/babel-polyfill/7.0.0-alpha.12/polyfill.js

若您嫌麻烦,直接点这里: https://codepen.io/timrchen/pen/NggaEj
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐