字节前端1+2+3面面经(已经凉了)
31号完成的面试,可能凉了,也可能被放进备胎池了,发个面经
一面:
1.自我介绍是必不可少
2.手写一个css布局(左右固定,中间自适应)
3.url输入后全过程
4.tcp三次握手
5.跨域问题
6.js方面的问题(具体给忘了)
7.vue中v-if和v-show
8.双向绑定原理,2和3有什么区别
9.defineproperty和proxy有什么区别
10.算法(本人算法其实还行,但数据结构属实拉跨)
<1>二叉搜索树 不会
<2>二分排序
面完让我等几分钟,通知下一个面试官
二面:
1.问我能否来实习,大概一周能来几天
2.js数据类型
3.如何判断[]和{}
4.instanceof原理,手写
5.数组的类方法和实例方法(说实话,我以前真不知道类方法和实例方法区别,然后面试官看出来我不知道,就给我讲了他们的区别)
6.上一个没答好,问我数组有哪些方法,你会如何分类他们(我就按是否改变原数组分类,他说ok)
7.了解过防抖节流吗?手写一个节流方法
8.对promise有了解吗?有什么他的类方法(回答了all,race,allsettled)
9.手写一个promise.all方法
10.对9的改进,如果传入的数组不是promise对象呢?(我回答了用instanceof去判断,他说可以,但可以用resolve()把非promise对象改为promise,自己不知道,还是增长了知识)
11.vue的生命周期,把知道的全写出来(写了十个,多了两个keep-alive的)
12.keep-alive作用
13.vue-router的原理
14.hash和history区别,浏览器怎么实现
15.算法,快速排序(写完他说可能不对,但我已经给你过了,你等下一个面试官来问你)
三面:(这一面我全程在梦游)
1.先问了问怎么学习前端,为什么想学
2.项目有什么难点(我说了vuex替换pubsub)
3.那是怎么使用pubsub的
4.观察者模式和pubsub这种发布订阅的区别(不会)
5.能不能手写一个观察者模式(这题不是要了老命,不会)
6.浏览器运行机制(说了渲染引擎和js引擎,后来发现他想问我内核)
7.那渲染和js之间怎么通信(其实也不太会,就瞎扯淡)
8.浏览器如何处理请求 (回答了内核,感觉答对了,他最开始应该就是想问这个,只是我打错了,他就顺着我问下去了)
9.线程和进程(不会三联)
10.对未来有什么规划(就还是扯,什么学习后端之类的,做全站)
11.算法题
<1>二叉树寻找和为n的路径(有点bug,他说完后自己就改好了)
<2>有一个无序数组,实现一个方法,把参数传进去,返回第k大的数
最开始写了两行,push+sort,问我sort复杂度,我说O(n**2),他说这个是不是太复杂了,让我改一改
然后也没改好,还是在外面用了sort,内部去判断参数如果比数组内容小,就插入进去(感觉他不是很满意)
12.反问
就问了一个问题,部门运用的技术栈(他回答说我们主要是react,TypeScript,还有就是前端基础的了)
感觉完蛋,三面面的不好,然后技术栈我都没涉及到
最后就说后续会有hr联系,到现在都没有。。。。。。。
一个下午完成的三个面试,还是希望可以拿到offer。
#面经##校招##字节跳动##前端工程师#