1.上来第一问,看过vue源码嘛? (答:看过diff相关,介绍了下vue diff算法)接上一问,vue 的diff为什么不只使用一个指针,而是采用头尾指针?2.vue computed 与 watch 是怎么实现的?3.让你实现watch,你会怎么实现?4.async await Generator Promise四者之间的关系5.一次请求最耗时的地方是哪里?6.一次https请求,哪个阶段最耗时? (答:可能是ssl握手)接上一问,ssl握手最耗时,有什么办法优化?7.从地址栏输入url到浏览器展示出页面,浏览器都有哪些进程和线程参与?8.js为什么要单线程,(答:可能是为了避免多个线程同时操作一个DOM,引起并发的问题)接上一问,那可不可以操作DOM时单独开一个线程,使用单线程,其他时候使用多线程?9.浏览器主进程是干嘛的?10.进程和线程的最大区别?11.进程之间如何通信?线程之间如何通信?12.桌面端(Electron)是不需要cors的,为什么?13.没有cors情况下,你觉得整个请求与响应的过程中,是在哪里走不通?(答:浏览器可正常发请求,服务端可以正常响应,但是浏览器拒绝接收)14.小程序的安全策略中,有一种机制可以在特定情况下拦截请求,有了解嘛?-------------------------------------------------------寄,刷新认知的一次面试,基本全程懵逼