Skip to content

webpack和vite的区别 vite的优化 手写:事件总线,实现on,once,off,trigger 动态规划解决了什么问题 手写:带有并发限制的promise请求 class Scheduler { addTask(promiseFn) { // ... } }

let wait = (time) => new Promise((resolve, reject) => { setTimeout(() => resolve(), time); })

let scheduler = new Scheduler();

let addTask = (time, value) => { scheduler.addTask(() => wait(time)).then(() => console.log(value)); } // 面试结束后屏幕被关了,这里应该有几个类似的调用 addTask(500, '123456'); 手写: 给定一系列的api,测量上传速度(实现的时候用的GET请求)并选择一个加载时间最短的api。

let apis = [ 'registry.npmjs.com', '....', ]

const scheduler = new Scheduler();

scheduler.addTask(1, "1"); //1s后输出1 scheduler.addTask(2, "2"); //2s后输出2 scheduler.addTask(1, "4"); //2s后输出4 scheduler.addTask(1, "3"); //3s后输出3 scheduler.start(); 收起

本站访客数 人次 本站总访问量