乐趣区

字节跳动前端实习面经

字节跳动前端面经(目测在备胎池中)
本文只记录一些我印象深刻的问题,后期有时间的话我会写上答案
一面

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 电话,说要加面。今天又接到电话,说面试官有紧急会议,面试暂时取消,之后联系。我信你个鬼,肯定是备胎啦 ~
总结
面完就一个感觉,自己好菜啊,找不着工作了,还是去考研吧~~~

退出移动版