不醒的梦 2022-05-03 10:49:42
function myPromiseAny(arr) { return new Promise((resolve, reject) => { let pendingCount = arr.length; const error = new Error("all promise were rejected"); error.errors = new Array(arr.length); function resolveHandler(v) { pendingCount -= 1; resolve(v); } function rejecthandler(index) { return function (e) { pendingCount -= 1; error.errors[index] = e; if (pendingCount === 0) { reject(error); } } } arr.forEach((arrItem, index) => { Promise.resolve(arrItem).then(resolveHandler).catch(rejecthandler(index)); }); }); }
- 共 1 页
- 1
@GuidingStarKe
第 56 题:要求设计 LazyMan 类,实现以下功能