面美团,腾讯,字节,小米。结果:美团,腾讯,字节已offer。
总体感受,腾讯比较波折,面的次数比较多,美团和字节流程很顺利,一条龙服务。
美团:
一面:
1. 使用事件委托如何判断点击的是下面的哪一个元素,比如一个image,可以使用二叉树的自下而上遍历parentNode
2. 手写继承,forEach和map的区别
3. diff算法,react虚拟DOM
4. flex布局属性,实现水平垂直居中
5. css预处理器,scss
6. promise原理
7. 说一下react生命周期,新旧版本都说了,为什么废弃旧版的几个生命周期,答:为了fiber架构的安全性
8. useCallback是引用怎么办,这里分为数组和对象来处理,最好是使用immutable.js
9. redux为什么是纯函数,不纯也不会报错,为什么开发要求要纯
10. React.createContext是什么,原理
二面:
1. 项目说了非常久,项目的模块,负责的哪一些
2. 路由鉴权如何实现,如果是不同身份怎么重定向到未认证页面,死扣细节,代码实现
3. websocket用来干了什么,为什么不在onmessage里来发送数据,这部分没有注意到,主要是项目需要已经达到的情况下可以不用onmessage
4. websocket和http的区别是什么,建立过程,头部字段用来干什么
5. react-redux原理,应该是props的传递加发布订阅模式
6. 大学学过什么课程,说一说计算机网络吧
7. http建立过程,头部字段,状态码说一下
8. TCP连接源主机和目标主机靠什么连接起来,端口号,面试官说还有,反正我不记得了
9. http1.1管道传输是什么,问的比较深,反正我只会皮毛
还是问了挺多的,靠记忆写了这么几个题,其他的忘记了
hr:
都是很常规的问题
家住哪里,什么时候实现,为什么来美团,老生常谈的一些东西
过4天,offer
字节:
具体问题不记得了,说一说手写方面的吧
1. 写一下react生命周期
2. 写一下http知道的状态码,含义(可能是面试官那边比较吵,写下来看得明白一点)
3. 算法:对称二叉树
4. 算法:数组扁平化,可以控制扁平化的层数
5. 手写vue模板解析,要处理对象中没有属性的情况,不能使用正则
```js
const template = "My name is $name},I'm from ${city}, I'm ${age}, I ${action} basketball";
const result = strWrap(template, {name: 'LiuXing', city: 'Beijing', acction: 'play'});
console.log(result); // My name is LiuXing,I'm from Beijing, i'm --, I play basketball
``` 6. encodeURL原理
7. 算法:岛屿最大面积
字节没有记录题目,以上只是面试要求手写的一些东西
一面1h,二面1h,三面30min,流程很快,2天结束,4天后offer
全部评论
(9) 回帖