实现 `Promise.all`(手写 polyfill)。
Implement `Promise.all` (write a polyfill).
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
标签: ByteDance, Promise, Polyfill, Async
目标岗位: Front End Developer, Frontend Engineer
目标公司: ByteDance
参考答案摘要
答案(思路 + 实现) 目标: 接收一个可迭代对象(通常是数组),其中元素可能是 Promise 或普通值;返回一个新的 Promise: 当 全部 成功时,以 输入顺序 输出结果数组。 当任意一个失败时,立即 reject(短路)。 应支持空数组:立即 resolve([])。 关键点 用 Promise.resolve(x) 把普通值统一包装为 Promise。 计数器记录完成数量;用结果数组...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。