首页 > 字节前端面经分享
头像
网络搬砖人
发布于 2021-12-30 21:24
+ 关注

字节前端面经分享

这段时间面字节,牛客的各位大佬面经给了我特别多的帮助,特别是三面,看面经之前都没看过,基本上是看到了面经才记下来的题目,没想到真的考了😀
特地来回报一下社区,真心感谢大家,希望越来越好

我的背景,双非一本大学,本科大三在读,22届毕业,因为在8月份去JD实习,错过了秋招,所以一直没有offer,一开始以为JD可以转正,但JD最后也没给转正,所以不得不出来找校招offer。

一面(40min)
考的很杂,就很字节,啥都考点
1.操作系统线程进程的区别
2.OSI 七层模型,简单了问了一下每一层的功能,以及有什么协议我是按下面图片答的(勉强过关,图片放在最后了)
3.http 2.0和1.1区别
4.TCP和UDP区别,好坏
5.webpack问了用过的loader,热更新原理
6.看代码题,很经典的原型链代码题,很多面经都有,然后询问一下为啥,原型链一定要搞懂
//伪代码,意思基本是这样
function Person(name){
    this.name = name
}

Person.prototype.a = function (){
    console.log(111)
}
Object.prototype.b = function (){
    console.log(bbb)
}
let p1 = new Person('aaa')
p1.a()
p1.b()



7.算法题,链表有环(我是用快慢指针)
其他的题就是一些简单的八股文,没啥价值背就完了,但是当时面试时间记错了,虽然全部答出来了,但是心里还是很慌,给面试官印象不好,
所以很怕挂了,但面试官还是很好,隔天就受到了电话通过。

二面(1h)
面试官很和善
1.一上来就是排序算法,问我会啥排序算法,我说我会快排和冒泡,然后问了快排的时间复杂度,最坏情况,最好情况,使用场景,选择key的要求,口述了一遍快排,冒泡(当时比较保守,比较熟悉的就这两个)。
2.口述深拷贝。
3.场景题,一个表格很多的tr和td,我想点击单元格,输出td的内容,该怎么做
我回答:1.最基础的就是每个格子绑定一个点击事件,但这太麻烦不方便维护 2.就是用事件委托,将事件绑定在tr上,然后通过冒泡去触发
面试官:那怎么输出里面的内容呢?
我:用e.target去拿。
面试官:那我不想触发这个事件了怎么办?
我:用event.stopPropagation()去阻止事件冒泡
面试官:那我要一个一个阻止嘛?
我:在事件捕获阶段去阻止事件捕获就行。(主要考的就是事件的冒泡,捕获,等机制)
4.问了一下var let const区别,延申到了作用域,然后看代码题,就是一道简单的作用域判断的代码题
5.事件循环,并且看代码,也是简单的看代码题,面经都有,可能大部分人会忽略async await异步执行结果,或者说不知道哪部分是微任务、
6.箭头函数this,看代码题,顺便烤考了一下JS类型转换 Number(undefined)是啥,然后undefined - 2是啥?
7.http和https的区别,https的全部过程,数字证书的验证,面试官提问:假如在CA机构将证书传给客户端的过程中,遭到黑客攻击篡改怎么办?
8.手写题:数组拍平,用了reduce写法,然后面试官叫我绑定将函数绑定在Array的原型上,去调用,这个就直接将原本函数的arr = this就行,下面都换一下就好。

二面结束面试官直接说,等电话就行,我就感觉差不多通过了,果然第二天接到电话约面试。

三面(48min)
1.上来聊项目,在JD项目中做了什么,技术亮点,性能优化用了什么。
2.React数据状态管理用了什么? 
我答:dva,recoil。
面试官问:为什么一个项目中要用那么多种状态管理。
我大概就回答了一下dva的一个使用场景,和recoil的场景,dva更重一些,recoil感觉会轻一些。
3.post的数据传输格式有哪些?例如:application/json这些
4.看前面面试官考你的代码题不多,写个异步任务调度器吧。。。。。。(刚好前几周看牛客社区学习到,最近天天写,强压着不笑出来😀

面试结束,面试官态度一直很平静,看不出来喜怒,但是自己答的感觉不是很好,感觉自己没了。。。
心惊胆战过了几天,今天下午上班的时候突然收到电话说通过了,直接谈了薪资,特地来回报一下社区。

心得:我从面实习就投过字节,面的很拉跨,到后来得知JD转正无望后,第一场秋招面试就是字节教育部门,但当时准备太差,被虐的体无完肤,当时连TCP的拥塞控制算法都忘记了,后来沉下心来,边工作边学习提高自己,从一开始的小公司一面-二面通不过,到后来手里拿了几个中厂的offer,到现在很幸运的拿到了字节的offer,感觉还是一个字,😀
不断的面试真的能提高自己的各个方面,你面试不过的挫败感也能激励你继续向前学习,也能知道自己的不足,继续补充学习。

另外:面经一定要看,但不是刷面经就完事了,面经只是查缺补漏的关键点,所以别妄想只刷面经能通过。
祝愿大家能拿到好的offer,冲冲冲😛


更多模拟面试

全部评论

(4) 回帖
加载中...
话题 回帖