3.15 一面
先问了一些项目上的问题,了解一下会的技术栈,然后根据技术栈和项目中出现的常见问题进行提问,然后就是八股文
1、重绘和重排的区别,什么时候会触发重绘和重排
2、script的引入方式,defer和async的区别是什么
3、跨域的解决策略有哪些?
4、浏览器的本地存储的区别,项目中的登陆信息怎么存的?
5、localStorage和Cookie存储如果不注意,会有什么安全问题?
6、前端性能如何优化?
7、首页加载 白屏时间长可能是哪些原因导致的?
8、你还做过哪些前端优化?
9、BFC是什么?怎么开启BFC?
10、页面响应式布局的方法都有哪些?
11、js中事件循环机制
12、ES6的新特性有哪些?你用过那些ES6新增的数组的方法。
13、css中渐变如何实现?
14、forEach和map的区别?for in 和 for of的区别?如果我想使用for of遍历对象,如何做(这个没答好,可惜)
15、口撕 数组去重的方法(说了好几个)
可能还有一些漏掉的八股文,我忘了。。。。
3.20 二面
是一个很不错的小哥哥,问了我实习期间做的事情,然后深挖了一下里面的技术细节。还有就是喜闻乐见的八股文
1、项目优化的方式(真的很爱问)
2、高性能表格和图片懒加载的实现是怎么做的?
3、图片懒加载除了监听滚轮事件 还有其他什么方法?(intersectionObserver)
4、vue的生命周期,vuex的使用方法
5、组件封装用到的组件通信方式有哪些?
6、vue2和vue3的区别?
7、vue3中双向数据绑定 proxy代理的实现原理
8、proxy代理和Object.defineProperty()的优势是什么?
9、webpack中打包的流程什么?
10、webpack 中热更新(HMR)的原理是什么?(这个说的也不太好)
11、webpack中loader和plugin的区别是什么?
12、写代码。比较简单的题。给定一个数组和一个target 要求返回任意一组数组中两数相加等于target的数组下标。一次循环搞定,如果用双循环暴力写估计面试官还会要求优化。
反问:
技术栈(都是react)
对自己学习上的建议(加强js html css基础的学习)
总体来说两轮面试体验感都非常不错,不熟悉的问题都给了解答
#携程##携程前端#