面试的第一个问题,一般都是让你简单介绍下你自己,或者介绍一下你最近的项目,而一个面试者,如果连自己的简历都无法熟知,对里面提到的项目、技术都无法描述清楚的话,我想没有哪家公司会接受这样的,哪怕你是超级人才,你自我表述不行,估计也会为此头疼,所以,切记:一定要背好自己的简历,不要求你能全部记下,至少要熟记你最近所待过的两家公司,这两家公司里面你做过的项目,你负责的模块,项目里面用到的技术以及相对应的技术实现方案(这个尤为重要)。
大部分公司无论面试初级还是高级,无论是笔试还是面试,都会问到一系列基础题,可以参考下面总结的部分内容提前准备好。
常规知识点
1.js基础知识2.从输入url到获得页面经历的所有事情(越细越好)3.原型链4.继承5.es6新特性6.DOM事件和事件流7.盒子模型8.事件循环9.BFC10.Flex11.Promise原理以及手写代码12.vue响应式原理13.vue虚拟dom & diff算法14.前端性能优化15.防抖和节流16.HTTP缓存17.常见算法(排序洗牌等)
面试中遇到的高频题
1.事件循环2.原型链3.vue响应式原理4.HTTP缓存5.防抖和节流6.vue3解决什么问题7.Vue 为什么不能检测数组和对象的变化,怎么处理(为什么通过索引操作数组不能触发响应式)8.vue router原理9.v-model实现原理10.vue.nexttick11.https的过程12.性能优化13.promise(基本上要求可以手写Promise.all方法,这个问的最多)14.async/await15.从输入url到看到页面经历的所有事情(越细越好,这道题知识点非常多)16.跨域形成原因以及解决方案17.深拷贝和浅拷贝(也会问到JSON.stringify JSON.parse这种方案的弊端)18.箭头函数和普通函数有什么区别19.最近在看什么新技术
低频但是需要注意的面试题
1.CSRF & XSS2.chrome设置小于12px字体3.node和浏览器事件循环有何不同4.webpack tree shaking5.map & set6.前端有哪些技术(腾讯面试题,面试官会顺着你说的技术一个一个展开问)7.实现一个call/bind(call,apply,bind区别)8.get 和 post 的区别9.BFC10.yield11.如何给localStorage加上max-age功能12.Object.defineProperties都有那些参数,以及参数解释13.requestAnimation14.手写原型链和js各种继承模式15.让你重新做你做过的项目有什么可以改进的地方16.让一个元素消失的几种做法,有何不同,对子元素的影响17.如何遍历对象(接下来会问有何不同)18.搜索框输入需要注意的点(其实还是在问防抖)19.原生实现inserAfter20.事件委托应用场景,e.target和e.currentTarget区别21.HTTP缓存,对应字段,cache-contron都有那些值22.new过程都发生了什么
面试遇到的算法题
1.排序算法(冒泡,快排)2.洗牌算法3.v1.2.3 v0.3.0 这样的版本号比大小(找简单方法,不要随便写一个循环的版本)4.广度优先遍历5.用O(n)的复杂度合并两个有序数组6.数组生成树形结构
面试过程中,自信是少不了的,相信你可以, 面试的路上可以自己对自己说一句:I belive I can ! 反正我就是这么做的,自我的心里暗示吧,其实面对面试官的时候,你自信的状态也会让面试官觉得你是个很有底气的人,至少从感觉上会给你打个高分。另外还有就是保持沉重冷静,如果是让你提供技术方案或者说说某个技术原理,没必要一紧张一咕噜的什么都说,你可以对面试官说:我先想想,然后自己组装记忆中的知识,组装下语言,有条理的说出来,这样能更好的表现你的才能,不是吗?面试谁都会紧张,我也会紧张,有时候明明记得的知识点忘了,没关系,大胆的说忘了,或者直接说不知道。要记住,有部分不知道没关系,如果全都知道,那你应该是CTO级别了(开个玩笑)。
如果觉得《金九银十一起聊面试》对你有帮助,请点赞、收藏,并留下你的观点哦!