行情感受
2021年的时候,以为疫情下行情很差,没想到一直在走下坡,22年23年形势越来越差。说【前端已死】我觉得是有些夸张了,不过确实可能到了植物人或者打骨折的程度。
各家大厂外企等裁员不断,招聘要求也逐渐变高,面试通过率也会因为卷而低一些。拿着 科班出身 阿里背景 三年经验 的简历,依然有些拒掉简历的公司,有的卡 985/211、有的要 5 年以上经验、有的要技术或者项目高度匹配......
另外,招聘的岗位也减少了很多,北上深这种一线城市还稍微好些,杭州等二线城市已经卷的要命了。
如果你 Boss 上面投简历已读不回,不要太怀疑自己,俺也一样。所以还是尽可能找内推,起码能简历到项目组里。
面试中间也有各种经历,有被刷KPI的——和面试官聊了一个半小时,题也都做出来了,面试官频频拍大腿说牛逼,最后没过,哎,来骗来偷袭。还有碰到”细狗“面试官的,最烦这种,拿着文档问各种很细的东西。还有流程巨慢的,别的 Offer 开了几天了,他才开始约面试......
总共大概花了10天左右时间面试,拿到了 滴滴、拼多多、Shein 等还有些中小厂的Offer,最后选择了去滴滴,滴滴虽然现在有些式微,员工体验口碑还算比较好。
总之,行情确实不好,不过保证自己的核心竞争力还是有饭吃的,水平好的也能要到好涨幅的Offer。
题目
下面将通用的八股文题目整理出来,老套路按热度排序八股文题目,希望能对大家有所帮助。
HTML
- defer 与 asnyc ——高频
- prefetch 与 preload ——高频
- 前端缓存 cookie WebStorage IndexDB ——高频
- cookie 有哪些字段
- http-only是干什么的
CSS
- 谈谈对Flex布局的理解 —— 高频
- flex 的值有哪些
- 谈谈对 BFC 的理解
- 哪些属性值可以开启层叠上下文
- 有什么方法隐藏元素
- 水平垂直居中的方法
浏览器
- 从输入URL到加载出来的过程 —— 高频
- 重绘与回流 —— 高频
- 浏览器有哪些进程、线程 —— 中频
- 跨域是什么
- 浏览器与V8的关系
JavaScript
- 事件循环 —— 超高频
- new 一个对象的过程 ——高频
- ES6+ 新特性 —— 高频
- ES Module 和 CommonJS的区别 (包括其他模块化) —— 高频
- Reflect 是什么 ——中频
- 谈谈对 Promise 的理解
- 执行上下文
- 作用域链
- 闭包
- Object.defineProperty 与 Proxy 的区别
- Map 与 对象的区别,Map 与 WeakMap 的区别
- 垃圾回收机制
网络
- 三次握手与四次挥手
- HTTP2 的新特性
- 怎么开启HTTP2
- 谈谈 HTTPS
- HTTP 缓存 ——高频
React
- 谈谈React的 Fiber 机制 ——超高频
- React 的时间切片实现
- Fiber如何实现可中断可恢复
- React 为什么引入 Hooks
- 常见的 Hooks 有哪些,作用
- useMemo useCallback memo的区别与场景 ——高频
- Hooks为什么要写在顶层
- Hooks怎么存储的
- setState是同步还是异步,新版本呢,为什么 —— 高频
- React 的 事件机制 ——高频
- React 17 18的新特性有哪些
- 路由原理 —— 高频
- popstate 可以监听 pushState replaceState 吗
- 路由懒加载原理
- 状态管理 —— 超高频
- React 有哪些状态管理的方式
- 谈谈对 Redux 的理解
- 谈谈对 Context 的理解
- redux 与 context如何注入给组件
- react-redux 做了什么
- 为什么之前需要在组件顶上引入 React
Vue
- React 与 Vue 的区别 —— 高频
- Vue的Diff算法 ——高频
- Vue的响应式原理,Vue2和3响应式区别
- Vue3 的 toRef 与 toReactive 的区别
Webpack Vite Babel
- Webpack 的 Loader ——高频
- 如何手写 Loader
- Webpack 的 Plugin ——高频
- 如何手写 Plugin
- Webpack的性能优化手段 —— 高频
- Webpack的构建过程 —— 中频
- 如何提高构建速度
- 谈谈Source-map
- Babel 的编译过程
- Webpack 与 Vite 的区别
其他
- 前端性能优化 —— 超高频
- 图片
- 网络
- 缓存
- 打包
- ...各种
- 前端安全 XSS XSRF 等
手写题
包括但不限于:
- new 的过程
- 深拷贝
- 数组转树 —— 重点
- 扁平化 ——重点
- Promise 的静态方法 —— 重点
- 数组去重
- 响应式 —— 重点
- 虚拟DOM构建真实DOM
- 发布订阅 —— 重点
- compose —— 重点
- 批量请求 —— 重点
- 寄生组合继承
- 等等
项目
众所周知,项目也是面试中非常重要的一部分,需要准备好亮点难点,尤其喜欢考察性能优化手段。这部分建议好好打磨,提前发掘,准备话术,必要时可以先准备好逐字稿熟悉透彻。
最后
2023年,前端一面的核心八股文还是这些东西,好好准备一定是没问题的,需要尽可能答得完整且有深度。另外、卷就卷在要求比较高,可能一道题翻车面试就会挂掉。
除过八股文理论外,手写题还是频率非常高,包括 JS 手写题和算法题,基本上也是做不出来就没了,需要用心准备。
建议非必要不出去面试先继续苟着,如果必须找工作的,建议多刷题,多给自己简历和项目找亮点,每场面试完及时复盘。
行了就这样,滴滴师傅要去接下一单了,再见!