一面:
主要是做了三道题,其他没太问(做太久了后面没时间了)
- 二分查找(如果排序是逆序怎么处理)
- 实现 instanceof (null、undefined 怎么处理)
- 实现水波跳动效果
二面:
- key 的作用 -- 虚拟 dom 的构建
- key 是虚拟 dom 对象的标识,当状态中的数据发生变化时,react 会根据新数据会生成新的虚拟 dom ,之后进行新旧虚拟 dom 的对比。
- 旧虚拟 dom 会在新虚拟 dom 找相同的 Key,如果新旧虚拟 dom 的内容没有变,它就会复用之前的真实 dom,如果发生了改变,那么就生成新的真实 dom ,最后渲染到页面上。
- 防抖节流,简述实现
- 防抖:一个事件被触发的 n 秒后会执行回调函数,如果 n 秒内这个事件又被触发,那么会重新计时
- 节流:一个时间段内,只有一次能触发回调函数的执行
- 简述 cookie
- 闭包为啥会性能不好 -- 变量一直被引用,无法回收 --- 垃圾回收机制:标记清楚法、引用计数法
- 两个盒子水平垂直居中的方法
- 简述暂时性死区
- 如果块级作用域中存在 let、const 声明的变量,它会形成一个封闭作用域,在它被声明之前,不可以使用这些变量,即使它的父级存在同样命名的变量。
- 简述 async await
- promise.all 的返回值,如果有一个报错呢
- webpack 打包出来的内容特别大怎么办
- 代码压缩:uglify
- 使用CDN引入资源
- 压缩js,css,图片
- cache-loader 对于性能开销,比较大的 loader 进行缓存
- 使用热更新替换自动刷新
- 实习遇到的问题
- 实习过程中的收获:技术上、代码规范、逻辑思维
三面(感觉凉透了)
- node、 java 有什么区别
- 扫码登陆原理
- 大文件上传(断点上传怎么实现)