这快被问的内容比较少,重点从布局入手,比如单位、盒模型、定位、响应式布局等知识点。
CSS:BFC、权重
对于JavaScript不限于初级、中级、高级;包括原型与原型链、继承、事件循环、作用域、ES6语法、垃圾回收与内存泄漏等。还有很多,自己整理。
网络通信少不了TCP/IP、UDP、HTTP、HTTPS、Websocket、DNS解析、浏览器缓存、CDN缓存这些。
Vue经典面试题不必多说,深入探究其原理很有必要,除了一些经典的原理以外,可以对每个小知识点的原理配合源码实现来整理回答。其次可以理解其**或者一些设计模式的实现,如响应式依赖的观察者模式。。。
再者,对于其生态的其他技术或者前沿技术,要掌握和了解。对于Vue来说,Router和Vuex必不可少,其次如vue-cli、pinia等要了解。
最后Vue3.0已经变为默认版本了,这个必须要掌握了,并能说出相较于2.0做了哪些改进、api的变动、原理的优化等。
例如:Vue diff、响应式原理(准确的说,应该叫数据响应式原理)、双向绑定原理、Vue3.0 新特性。。。
后续学习补充。(去上海的话必学😄)
如loader和plugin的原理,编写loader和plugin的流程、webpack构建流程、热更新原理、性能优化等。
打包界的新宠:vite(rollup)、Esbuild等
这两个东西作为前端基建的基础,几乎在任何前端项目中都能用到;但是我们日常开发很少碰到他们,即使碰到了也只是参考下官网对特定的需求,进行配置而已,这样是远远不够的。
这里先放一些比较好的文章,后续补充学习归纳。
对于后端来说,瓶颈在数据库;对于前端来说,性能显而在浏览器,因此对于浏览器原理的理解也是不可或缺的。比如我们在开发一个WebGL相关的项目时,不了解浏览器的渲染压力,疯狂绘制,这样很容易导致浏览器的崩溃。
这里列举一些:浏览器渲染原理、浏览器本地存储(chrome 内存查看)、浏览器同源策略、浏览器事件机制、垃圾回收机制、浏览器安全、进程与线程(js主线程、UI线程、网络线程。。。)、浏览器缓存、浏览器组成等等。
前端对算法的考察大部分为easy和medium,都是比较常用的,但是一定要做出来才行。
基础算法:排序、递归、链表、动态规划、贪心等等。
2022年疫情原因,行情不好,导致招聘也发生了变化;
- HC下降 —— 缩招
- 面试难度上升 —— 算法、手写类变多、是否热点项目经验变多
- 各家采用人才库 —— 珍惜每一次的面试机会,试错成本变高
- 注重实战经验 —— 知识面,注重已有经验