我有一个循环,它调用一个异步执行内容的方法。该循环可以多次调用该方法。在这个循环之后,我有另一个循环,它只需要在所有异步工作完成时执行。
这说明了我想要什么:
for (i = 0; i < 5; i++) {
doSomeAsyncStuff();
}
for (i = 0; i < 5; i++) {
doSomeStuffOnlyWhenTheAsyncStuffIsFinish();
}
我对承诺不是很熟悉,所以有人能帮我实现这一点吗?
这就是我
doSomeAsyncStuff()
行为:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
editor.on('instanceReady', function(evt) {
doSomeStuff();
// There should be the resolve() of the promises I think.
})
}
也许我必须这样做:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
return new Promise(function(resolve,refuse) {
editor.on('instanceReady', function(evt) {
doSomeStuff();
resolve(true);
});
});
}
但我不确定语法。