JS
    call、apply、bind区别
    事件循环 Event loop (promise setTimeout 输出顺序)
    Promise使用
    ES6特性
    var let const
    隐式转化
    原型、原型链
    作用域、作用域链、执行上下文
    深拷贝、浅拷贝
    判断数据类型
    闭包
    class(es6类)

    CSS
    垂直居中的方法
    flex布局 flex布局的全部属性 (一个容器 三个子 两个左一个右)
    rem
    自适应布局
    移动端适配

    HTML
    html5新增标签
    获取元素的方法
    事件冒泡、事件捕获

    VUE
    vue生命周期
    双向数据绑定原理
    改变对象一个属性、通过角标改数组的值、push等方法修改数组
    vue router是基于什么实现的
    vuex
    组件间传值的方法
    vue源码看过么
    vue.use是怎么实现的
    watch 和 computed的区别

    其它
    tcp连接 三次握手 四次挥手
    http协议
    浏览器缓存(强缓存、协商缓存)
    浏览器渲染流程(从输入url到展示)
    前端错误监控

    手写
    手写new (理解原型链)
    手写promise
    手写call apply bind
    斐波那契数列实现
    大数计算
    快速排序
    二分法
    数组去重