本文由 简悦 SimpRead 转码, 原文地址 mp.weixin.qq.com
刚刚
跳槽🔥🔥,这里分享一波个人学习资源。想看跳槽之路的可以点点:一年半前端人的求职路 [1]。先赞再看,养成习惯,感谢各位大佬🤓作者:俊劫
一、简历
一定要有
亮点!!!名校、大厂、工作经验、个人博客、开源项目等等。如果说都没有,来,现成的,把我的博客 fork 一份拿去自己用,搭建教程博客也有(完全免费),求个start。俊劫的博客 GitHub[2]。下面是个人认为比较重要的点,有不同见解的,评论区battle一下🤓
1、总体
不要花里胡哨的,可以用重点颜色标记自己擅长的技能,简历模板一定要简洁,字体大小,行距要看的舒服,不要一大段一大推文字的来,用1234来描述自己负责的事情,产出的结果,社招简历不要低于两页。投递简历最好找靠谱的内推,能根据你的经验,给你推业务较为匹配的部门,同时能跟进进度。不然就找猎头给你推,最后 boss 联系hr也行。(大部分公司有简历档案,一般半年起步不能再投,除非有人捞你)
2、项目经验
社招最重要的部分,类似的项目经验可以浓缩下,根据项目熟悉度,排序写。没啥写的就编一些你知道的解决方案,前提是自己要搞清楚,很多面试官会逮着你的项目经验细问。项目经验中,要加入一些个人思考,是不是这个项目不让你做,结果也一样?有没有考虑过每个需求的合理性,扩展性?有定制化需求如何处理?你的价值在哪里?你做过哪些方案调研,架构设计,产品设计? 遇到过什么难题? 技术方案怎么落地?新技术如何推进?
3、工作经历
工作时间可以自己算一下,标注一下几年几个月。自己在公司担任的职位,负责的事情,做出的产出。获得过什么什么奖项都可以写写。
4、基本信息
姓名、年龄、电话、居住地、几年经验、个人博客、GitHub链接等等。照片的话,对自己有自信的,美一美搞一个。学校好的,可以重新起一栏写,不好的就一笔带过吧。
二、面试高频问题
2 月初面试遇到的一些问题,
不全面,但是比较真实。
1、JavaScript
讲讲
js数据类型?基本和引用的区别?symbol和bigint讲一讲应用场景?判断数据类型的方法?
instanceof原理? 判断空对象?typof null?typeof NaN?var/let/const 区别?
暂时性死区?块级作用域?const a = {}; a.x = 1 能不能修改?说说你对
函数式编程的理解?函数柯里化的理解?平时的使用场景?防抖、节流的含义,使用场景?手写一下?call、apply、bind 区别?
bind实现?bind 之后还能修改 this 指向吗?为什么?闭包概念,最主要的还是问
闭包的场景?用
es5实现es6类的继承?各种继承问的挺多的深拷贝与浅拷贝?常用方法?手写一个
深拷贝函数?说说你知道的 JavaScript
设计模式?观察者和发布订阅的区别?手写一个发布订阅?我真的写了说说对你对 JavaScript
异步编程的理解?ES Module与CommonJS模块的差异?两者互相加载的方式?一般会扯到 AMDPromise.all、race、allSettled 概念、手写?很多手写题都会用到,比如用 promise 实现请求并发个数限制?
2、Css
水平垂直
居中?兼容性?不知道宽高情况下?BFC 概念?作用?
常用场景?Flex?注意
flex:1的含义,一般会给你个场景题盒模型概念,如何切换盒模型?实现
1px边框?1px 线条?伪类和伪元素区别?使用场景?
3、Http && 浏览器
浏览器
缓存?http 缓存?主要要讲一讲强缓存、协商缓存、preload、prefetch、Service Worker 等,304的含义?协商缓存e-tag是怎么生成的?Last-Modified是基于什么生成的?两者对比一下?优先级哪个高?什么是
跨域?什么情况下会跨域?浏览器根据什么字段判断是否允许跨域?跨域的解决方案有哪些?options请求了解过吗?说说 CORS 中的简单请求和复杂请求?form表单提交会跨域吗?讲一讲浏览器事件循环
Event Loop?node事件循环描述一下?http2有哪些新特性?http2还有哪些缺陷?http3的一些了解?从输入 URL 到页面加载完成的过程,一般要很详细的描述:包括DNS查询,缓存查询,3次握手,4次挥手,浏览器渲染进程等,面试官会从里面再挑几个问题深入问,比如为什么是 3 次握手 4 次挥手?渲染进程中的 GUI 渲染线程、JS 引擎线程、事件触发线程等等?可能会问到进程线程的区别?浏览器为什么是多进程?js 为什么是单线程?怎么支持多线程?等等https
加密原理?主要是讲对称加密和非对此加密结合使用的一个过程。什么是中间人攻击?和 http 区别?
4、Vue
生命周期?那个生命周期可以获取到
真实DOM?修改data里面的数据,会触发什么生命周期?组件 data 为什么是一个
函数?vue 组件通信?一般说了
vuex,就会问 vuex 用法?action和mutations区别?实现原理等?vue
导航守卫,分全局和组件的,一般用于权限控制,这个就可能扯到项目中的一些鉴权问题。$nextTick作用?实现原理?微任务向宏任务的降级处理,经常被问到说出几种宏任务,微任务。vue响应式原理?基本都会问vue
scoped属性作用?实现原理?vue
router有几种模式?实现方式?key的作用?没有 key 的情况,vue 会怎么做?会引出 diff 的问题vue
diff过程,和 react diff 区别?vue 2.x
defineProperty缺陷?业务代码里面怎么处理?$set原理?vue 是怎么重写数组方法的?考察你是不是真的看过源码vue 3.0
proxy优缺点?怎么处理 vue3 不支持 IE?computed和watch的区别和运用的场景?除了基本的,看你能不能说出三种watcher的区别
vue 原理相关的可以参考我的另外一篇文章:vue2.x 高阶问题,你能答多少 [3]
5、React
生命周期详细描述一下?官方为什么改变?说说你对
虚拟DOM的理解?直接全量更新和 diff 哪个快(这个问题要分情况)?什么是
HOC?React 里面用过哪些?可能让你实现一个add(1)(2)(3)的函数Fiber干了什么事情?requestIdleCallback了解多少?react性能优化?hooks出现的意义?类组件和函数组件之间的区别是什么?为什么
不要在循环、条件语句或者嵌套函数中调用hooks?记住官网的一句话,Not Magic, just ArrayssetState
同步还是异步?比较常问,问的可能也比较深入如何避免组件的
重新渲染?memo/useMemo、PureComponent?useMemo 和 useCallback 区别?
拉钩之前有个一块钱的课【深入浅出搞定 React】修言大佬的课,有兴趣的可以去看看(也可以借号🤓)
6、其他
简历写的了解,问的很少。即使现在公司用 node 做中间层,也基本没问 node 的问题,所以这块我就简单写写
常用的一些模块,
fs/path/http等等EventEmitter概念,使用场景,错误捕获Stream概念?使用场景?常见的 Stream?
webpack基本也是必问,得系统学习一下
webpack
构建流程?打包原理?项目中做的一些
优化?loader和plugin的区别?有没有写过?常用哪些 loader 和 pluginwebpack
热跟新原理?tree-shaking?对于 CommonJS,tree shaking 怎么办?webpack loader 的
执行顺序?从左到右?从上到下?
其他
项目做过的一些性能优化,
基本必问长列表渲染怎么优化?各种
懒加载的实现原理?路由?图片?Typescript 中的
interface和type到底有什么区别等等,很多
低频率的想不起了
其他的一些东西,主要还是看你简历上
写了什么,或者你的回答有什么面试官感兴趣的词。尽量突出自己的优势,发挥好就行,结果对自己的检验,不是对自己的否定,加油💪🏻
三、资源分享
1、博客
阮一峰的个人网站 [4] 持续更新,没事就去看看,阮大的风格就是
很容易看懂字节飞书的学习计划 - 超清楚(必看)[5] 字节前端知识梳理,很清楚,
建议收藏冴羽的博客 [6] 淘宝大神总结的
前端基础Gridea[7] Gridea 是一个
静态博客写作客户端,帮助你更容易地构建并管理博客或任何静态站点vuepress-theme-reco[8] 一款简洁而优雅的 vuepress 博客 & 文档 主题。我的个人博客 [9] 基于这个搭建的,有兴趣的可以了解下, 博客也有
搭建教程前端知识每日 3+1[10] 学习大佬的姿态,我也搞了个
每日学习打卡,各位大哥可以搞起来 (俊劫的个人博客 [11])有赞技术团队 [12]
干货满满
2、社区
掘金 [13] 有必要写一下的,还有 SegmentFault、CSDN、博客园等等,就不一一写了
开源中国 [14] 没事去逛逛,看看
业界大哥们都在搞什么vue 中文社区 [15] 不知道是不是正版,基本都是
vue的相关生态印象中文 [16] 算是一个
导航,资源汇总
3、算法
leetcode[17] 我一般只刷
简单和中等的,难的我知道我搞不出来😂人人都能看得懂的 Leetcode 力扣刷题教程合集 [18] 不错的算法
视频讲解,跟着做,算法问题不大力扣加加 [19] 努力做西湖区最好的
算法题解用 JavaScript 实现的算法和数据结构 [20]
看名字就知道很强了,没事练练
4、开源项目
深入浅出 Webpack[21] 真
深入浅出Promise 小书 [22] 面试都被
promise锤过吧?这里有很全面的讲解大厂面试题每日一题 [23] 没事就来刷一刷
大前端面试宝典 - 图解前端 [24]
图解,懂吧前端面试每日 3+1[25] 以面试题来驱动学习,提倡每日学习与思考,每天进步一点。
有点卷,但是没办法😂前端面试 [26] 里面也有每日一题,可以持续打卡,
还是卷~😂七天学会 NodeJS[27] 算个入门教程吧,挺全面的
若依后台管理框架 [28] 若依官网 [29]
vue后台系统,感兴趣的可以了解下TypeScript 中文手册 [30] 学习
TypeScript必备
5、React
React 生命周期图 [31]
大神之作,画的很清楚35 道咱们必须要清楚的 React 面试题 [32] 问题和答案都有
这可能是最通俗的 React Fiber(时间分片 ) 打开方式 [33]
React 入门儿 [34] 京东凹凸实验室出品,非入门
成都房协网数据分析 [35]
React + TS可以学习一波React 中文风格组件库 [36] 很
有意思的开源项目
6、Vue
Vue.js 技术揭秘 [37]
ustbhuangyi大佬的课,讲的很清楚vue 源码分析 [38]
视频,带你从头实现一个 vue一次关于 Vue 的自我模拟面试 [39] 百度大佬的梦,学习一波,也去做个梦
vue2.x 高阶问题,你能答多少 [40]
我写的,掺个水图解 Vue 响应式原理 [41]
图解,懂了吧,思路很清晰
7、效率 & 工具
写文档专用 [42] 各种技术文档写作
用来生成好看的代码块的 [43] mac 风格的代码块
Markdown Nice[44] 美化 markdowm 样式,很多模板可用
reveal.js 制作网页版 PPT[45] 之前写了一个,聊一聊前端性能与体验的优化 [46] 在线 PPT 展示,点击直达
8、其他文章
一个合格 (优秀 ) 的前端都应该阅读这些文章 [47] 合格 & 优秀
前端常见跨域解决方案(全 )[48] 跨域的问题,就一篇
搞定吧2021 年,我是如何从一名 Vueer 转岗到 React 阵营! 目前个人也在
vue转react,后续也会出一篇个人的感受拯救你的年底 KPI:前端性能优化 [49] 个人对前端性能优化相关的总结,有兴趣的可以看看,文章里有
在线PPT可以看可视化拖拽组件库一些技术要点原理分析 [50] 加深自己对
可视化的一些认识10 个 GitHub 上超火的前端面试项目 [51] 面试相关的,
收藏搞起来前端面试常见的手写功能 [52] 准备面试,至少
来写一遍无头浏览器 Puppeteer 初探 [53]
Puppeteer可以帮我们做很多服务端的事情,不知道的同学去了解下。也可以看看我用 Puppeteer 做的产出:Egg + Puppeteer 实现 Html 转 PDF[54] 在线预览:html 转 pdf[55]2021 年前端面试必读文章 [56] 梳理的很全面,每个知识点对应的都有
文章链接,有些基础的知识点建议看MDN,对某些东西,每个人都有自己的理解。图解 HTTP 缓存 [57]
政采云前端出品,讲的挺清楚的浏览器渲染机制 [58] 讲的
很全
参考资料
[1]
一年半前端人的求职路: _https://juejin.cn/post/6940058373534515237_
[2]
俊劫的博客 GitHub: _https://github.com/alexwjj/alexwjj.github.io_
[3]
vue2.x 高阶问题,你能答多少: _https://juejin.cn/post/6921911974611664903_
[4]
阮一峰的个人网站: _http://www.ruanyifeng.com/home.html_
[5]
字节飞书的学习计划 - 超清楚(必看): _https://bitable.feishu.cn/appNuDKPaGtimrdkB0JnXmpoktZ_
[6]
冴羽的博客: _https://github.com/mqyqingfeng/Blog_
[7]
Gridea: _https://gridea.dev/_
[8]
vuepress-theme-reco: _https://vuepress-theme-reco.recoluan.com/_
[9]
个人博客: _https://alexwjj.github.io/_
[10]
前端知识每日 3+1: _http://www.h-camel.com/index.html_
[11]
俊劫的个人博客: _https://alexwjj.github.io/_
[12]
有赞技术团队: _https://tech.youzan.com/_
[13]
掘金: _https://juejin.cn/_
[14]
开源中国: _https://www.oschina.net/project_
[15]
vue 中文社区: _https://vue-js.com/_
[16]
印象中文: _https://docschina.org/_
[17]
leetcode: _https://leetcode-cn.com/_
[18]
人人都能看得懂的 Leetcode 力扣刷题教程合集: _https://www.bilibili.com/video/BV1wA411b7qZ_
[19]
力扣加加: _https://leetcode-solution.cn/_
[20]
用 JavaScript 实现的算法和数据结构: _http://www.conardli.top/docs/_
[21]
深入浅出 Webpack: _https://webpack.wuhaolin.cn/_
[22]
Promise 小书: _http://liubin.org/promises-book/#introduction_
[23]
大厂面试题每日一题: _https://q.shanyue.tech/_
[24]
大前端面试宝典 - 图解前端: _https://lucifer.ren/fe-interview/#/_
[25]
前端面试每日 3+1: _https://github.com/haizlin/fe-interview_
[26]
前端面试: _https://lgwebdream.github.io/FE-Interview/_
[27]
七天学会 NodeJS: _https://nqdeng.github.io/7-days-nodejs/#1_
[28]
若依后台管理框架: _http://vue.ruoyi.vip/index_
[29]
若依官网: _http://ruoyi.vip/_
[30]
TypeScript 中文手册: _https://typescript.bootcss.com/_
[31]
React 生命周期图: _https://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/_
[32]
35 道咱们必须要清楚的 React 面试题: _https://juejin.cn/post/6844903988073070606_
[33]
这可能是最通俗的 React Fiber(时间分片) 打开方式: _https://juejin.cn/post/6844903975112671239_
[34]
React 入门儿: _https://juejin.cn/post/6899243806214848519_
[35]
成都房协网数据分析: _https://github.com/mengsixing/cdfang-spider_
[36]
React 中文风格组件库: _https://github.com/zhui-team/zhui_
[37]
Vue.js 技术揭秘: _https://ustbhuangyi.github.io/vue-analysis/_
[38]
vue 源码分析: _https://www.bilibili.com/video/BV1LE411e7HE_
[39]
一次关于 Vue 的自我模拟面试: _https://juejin.cn/post/6870374238760894472#heading-5_
[40]
vue2.x 高阶问题,你能答多少: _https://juejin.cn/post/6921911974611664903_
[41]
图解 Vue 响应式原理: _https://juejin.cn/post/6857669921166491662_
[42]
写文档专用: _https://www.docz.site/_
[43]
用来生成好看的代码块的: _https://carbon.now.sh/_
[44]
Markdown Nice: _https://www.mdnice.com/_
[45]
reveal.js 制作网页版 PPT: _https://juejin.cn/post/6850037266082070535_
[46]
聊一聊前端性能与体验的优化: _http://118.25.49.69:8086/_
[47]
一个合格 (优秀) 的前端都应该阅读这些文章: _https://juejin.cn/post/6844903896637259784_
[48]
前端常见跨域解决方案(全): _https://segmentfault.com/a/1190000011145364_
[49]
拯救你的年底 KPI:前端性能优化: _https://juejin.cn/post/6911472693405548557_
[50]
可视化拖拽组件库一些技术要点原理分析: _https://juejin.cn/post/6908502083075325959_
[51]
10 个 GitHub 上超火的前端面试项目: _https://juejin.cn/post/6895752757534261256_
[52]
前端面试常见的手写功能: _https://juejin.cn/post/6873513007037546510_
[53]
无头浏览器 Puppeteer 初探: _https://juejin.cn/post/6844903504276881422_
[54]
Egg + Puppeteer 实现 Html 转 PDF: _https://juejin.cn/post/6907500437134376974_
[55]
html 转 pdf: _http://118.25.49.69/_
[56]
2021 年前端面试必读文章: _https://juejin.cn/post/6844904116339261447_
[57]
图解 HTTP 缓存: _https://www.zoo.team/article/http-cache_
[58]
浏览器渲染机制: _https://segmentfault.com/a/1190000014018604_
最后
欢迎关注「三分钟学前端」,回复「交流」自动加入前端三分钟进阶群,每日一道编程算法面试题(含解答),助力你成为更优秀的前端开发!
》》面试官也在看的前端面试资料《《
“在看和转发” 就是最大的支持