js-promises承诺库的助手Promise.priority()
var wait = function(amt, err) {
return new Promise(function(resolve, reject) {
setTimeout(function() {
if (err) {
reject(err);
} else {
resolve(amt);
}
}, amt);
});
};
var print = function(val) {
console.log(val);
};
Promise.priority([wait(2), wait(1)]).then(print); //2 after 2ms
Promise.priority() 使得多个Promise按照指定的优先顺序依次执行。上述代码中,虽然 wait(1)
和 wait(2)
同时被传入,但 wait(1)
会先执行并返回结果。
注意: Promise.priority()
可能是自定义扩展,并非标准库的一部分。使用时需确保库的支持。
暂无评论