3~5年前端开发面经
前言
终于要从宁波去杭州了,经过从8月份结束面试到现在,中秋过完之后就要入职了。提完离职之后,差不多闲了1个月。
今天难得地放下游戏,回忆下面试题,希望能帮助到大家。杭州的大厂几乎面了个遍,阿里,蚂蚁,网易,字节,华为,有赞,只能按照记忆整理下面试题。
面试内容
算法,笔试
1.解析URL
出现得挺高频的,把一个url的query参数,解析成指定格式的对象。
2.对象的合并,key值的转化
出现得也比较多,给你一个对象,也是把它转化成指定的格式。比如把 a_b 这种下划线的key值转化为驼峰 aB,或者给你一个些数据,转化成对象。
比如把 a.b.c 变成 { a: { b: c } }
3.实现vue的双向绑定
4.实现eventListner
5.数组的操作
这个就挺多的,leecode多刷一刷,字节的题感觉都是从leecode找的,一眼看到就直接认出了。。。。。
这个题,难易程度其实相差很多的。有的题很简单,有的题很难。不过碰到的最难的也就是滑动窗口了。因为之前没碰到过类似的题,没有用双指针,磕磕绊绊做出来了,但是挺吃力的。
6.promise的使用
比如把fallback的函数改造成使用promise的。或者使用promise实现输出。这种题真挺烦的,要么不出,一出就挺搞脑子的,主要是绕。
字节对promise真的有偏爱,每个面试官绝对都会问。
笔试总结
虽然每个厂都会考算法,但是总体来说真的不难。最看重算法的应该是华为跟字节吧。
技术面试
技术的内容遇到的题目就很五花八门的,因为每个岗位需要的技能可能也不一样,但是高频出现的题目也是有很多的。
1 webpack的plugin和loader有啥区别,有写过什么loader和plugin吗
这个题真的是被问到无数次了,但是我依旧不知悔改,每次都是,了解过,没写过。不清楚区别,你敢问,我就敢说不知道。
2 打包优化,性能提升
这个也是,我永远都是回答那几个实际会用到的,多了就是不会,我特别反感背面试题,我高考古诗词填空都懒得背,滕王阁序永远只会那一句 落霞与孤鹜齐飞,秋水共长天一色 ,反正高考时候诗词填空错了好几个,让我为了面试去背这种东西 ?
如果是实际中用到了,肯定会记得,但是去硬记,不存在的。
3 promise
没错,promise,永远的噩梦。还有async await。
4 import 和 require
5 原型链, new
6 跨域(cors), http请求
7 XSS 和 CSRF
8 框架原理
业务面试
问一下具体做的业务,业务方向难点。
如果讲到业务中解决了什么困难,或者又使用了新的框架。一定要知其所以然了,再拿出来说。面试官很喜欢在这里,问你是如果决策,为什么要使用,以及原理是什么。
如果只是简单的用一用,就别说了,很有可能一问三不知,心态直接绷不住了。
总结
主要时间也过去一个月。只有一些高频出现的还记得比较清楚,希望对大家有所帮助。
但我还是觉得,背面试题,可能不是太好。除非理解得很深入,不然问起来,可能很容易被听出来是背题的。其实简单想想也是,回答起来切入面很大,又浅又泛经不起推敲的,一下就知道是背题的,大厂的面试官水平一般来说肯定是优于我们的。
就跟上学时候,低头看课外杂志以为老师在讲台上会看不到一样,自欺欺人罢了。
所以嘛,努力工作,努力积累才是硬道理,笔试题或者基础概念题临时抱抱佛脚问题不大,其他的还是积累大于一切吧。
希望大家,能找到心仪的工作。继续打炉石去了~
链接:https://juejin.cn/post/7009153862221168671