all的要保证顺序的话是不是可以这样 Promise._all = (arr) => { return new Promise((resolve, reject) => { arr = [...arr]//将可迭代对象变为数组 let ans = [] let count = 0 for (let i = 0; i < arr.length; i++) { //并行开启 Promise.resolve(arr[i]).then((val) => {//不用push保存用下标保证顺序 count++ ans[i] = val if (count === arr.length) { resolve(ans) } }).catch((e) => { reject(e) }) } }) }
点赞 1

相关推荐

04-03 21:43
已编辑
深圳大学 Web前端
面试官人很好,问的问题都很业务很实际,而且提问很细项目拷打1.你在公司级项目里做前后端协作时,和上下游、后端一般是怎么配合的?2.你理解的&nbsp;RESTful&nbsp;是什么?3.你简历里写了&nbsp;JsBridge,那它的实现原理是什么?你们项目里具体怎么用的?是不是基于某个&nbsp;APP&nbsp;基座开发?端上同学有没有参与支持?4.你在移动端开发里是怎么调试的?如果线上或开发中出现&nbsp;bug,你能做到哪些排查动作,比如连开发环境、看控制台、断点调试?6.你对&nbsp;SSE&nbsp;的理解是什么?它的传输方向、通信特点,以及前端接收流式数据的方式你了解多少?八股15.Vue2&nbsp;和&nbsp;Vue3&nbsp;的主要区别是什么?为什么&nbsp;Vue2&nbsp;的&nbsp;defineProperty&nbsp;明明有局限,日常开发里很多场景又还能响应?Vue2&nbsp;做了什么补救,Vue3&nbsp;为什么要改成&nbsp;Proxy?16.你简历里写了参与多个企业级项目、也写了组件库,为什么这里只重点写了这两个项目?你具体做过哪些组件?17.&nbsp;你做表单组件时,是怎么设计表单系统的?表单项怎么设计?值怎么收集?校验怎么做?受控&nbsp;/&nbsp;非受控、默认值、回填这些怎么处理?一个通用表单至少应该具备哪些能力?18.你对&nbsp;HTTP&nbsp;缓存的理解是什么?强缓存和协商缓存怎么区分?强刷为什么能拿到最新资源?如果我想让某个资源请求时不要走缓存,该怎么做?手撕19.&nbsp;请你手写一个防抖函数,并运行验证一下。你在实际业务里是怎么使用&nbsp;debounce&nbsp;的?平时有没有用过&nbsp;Lodash?20.你了解&nbsp;Jest、测试用例、单元测试吗?单元测试是做什么的?21.&nbsp;请你写一个爬楼梯,或者直接讲思路也可以。状态转移和边界条件是什么?
查看12道真题和解析
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务