字节跳动前端面经(目测在备胎池中)
本文只记录一些我印象深刻的问题,后期有时间的话我会写上答案
一面
css两列布局,右列定宽,左列自适应。为了躲flex绞尽脑汁答了3种,还是没躲掉 =.=
flex
addEventListener
手撕代码:实现一个函数,每隔wait秒执行func,一共执行times次
function repeat(func, times, wait) {
}
// 输入
const repeatFunc = repeat(alert, 4, 3000);
// 输出
// 会alert4次 helloworld, 每次间隔3秒
repeatFunc(‘hellworld’);
// 会alert4次 worldhellp, 每次间隔3秒
repeatFunc(‘worldhello’)
this指向的问题
变量提升,从EC的VO答
感觉一面问的也都比较基础,可是我答得很一般,压线过的那种
二面
问了些项目相关,面试官好像对我做的一个自动生成很感兴趣,交流了好久
手撕代码:实现一个函数,该函数接收一个obj, 一个path, 一个value,实现obj[path] = value,obj类似json格式
react 中的 setState为什么异步?能不能同步?什么时候异步?什么时候同步?
promise
react virtual dom, diff
this问题
变量提升
二面表现不错,第二天就接到了HR的电话,让三面
三面
自我介绍
如何删除addEventListener绑定的事件
dva解决了什么?如何解决?为什么使用? 估计想问我redux-saga,这里答得很烂
redux异步问题,redux-saga,redux-promise,redux-thunk,这块刚好不会,想着肯定凉了
setState为什么异步?
受控组件 vs 非受控组件
手撕代码:数组扁平化
三面答得是真的很烂,想着没希望了,过了一天又接到HR电话,说要加面。今天又接到电话,说面试官有紧急会议,面试暂时取消,之后联系。我信你个鬼,肯定是备胎啦 ~
总结
面完就一个感觉,自己好菜啊,找不着工作了,还是去考研吧~~~
发表回复