字节跳动 前端 热乎乎的面经
一面
1. 怎么学的前端2. 讲讲最有趣的一个前端项目
3. vue双向绑定原理
4. 写代码:
a. await sleep(1000) 实现这个sleep函数
b. 实现counter函数,能实现以下功能:
function counter(){...}
let a = counter(3);
a.add();//4
a.sub();//3
a.add();//4
a.add();//5
c. 竖线最少会穿过多少个元素(砖块)
Input: [[1,2,2,1],
[3,1,2],
[1,3,2],
[2,4],
[3,1,2],
[1,3,1,1]]
Output: 2
二面
1. vue双向绑定原理;实现一个事件类Event,包含下面功能:绑定事件、解绑事件和派发事件
2. 对象、构造函数__proto__及prototype指向问题
3. curry实现
4. es6的模块和require模块有什么不同
5. webpack中的tree shaking
6. ts有了解吗
7. webpack打包文件名为什么要有hash值
8. CSS子元素水平垂直居中方法
9. BFC是什么,用来干什么
感觉二面有几个问题回答不出来没想到还是给过了,约了周四晚上三面,先把今天一二面的面经发出来吧,