1. 手写promise,简版看情况 如果对方比较优秀可考虑 全版
    2. JS实现一个带并发限制的异步调度器Scheduler,保证同时运行的任务最多有两个。完善代码中Scheduler类,使得以下程序能正确输出。 ```javascript class Scheduler { add(promiseCreator) {
      1. // todo
      } }

    const timeout = (time) => new Promise(resolve => { setTimeout(resolve, time) })

    const scheduler = new Scheduler()

    const addTask = (time, order) => { scheduler.add(() => timeout(time)).then(() => console.log(order)) }

    addTask(400, 4) addTask(200, 2) addTask(300, 3) addTask(100, 1)

    // 2, 4, 3, 1 ``` 二选一
    3 手写bind 实现
    4 手写reduce 实现
    css
    盒模型
    移动端适配方案以及对比
    css伪类和伪元素的区别
    js
    闭包
    原型链
    实现一个红绿灯 三秒red 两秒 green 一秒yello
    计网
    二选一
    三次握手
    四次挥手
    keep-alive 什么意思
    vue2 vue3
    响应式原理
    diff
    优化哪些
    react