字节跳动春招前端三轮面经
一面:
一面小哥哥很nice,问的问题也偏基础,全程谈笑风生
-
什么是堆,什么是栈,在哪里应用 什么是进程,什么是线程
TCP 协商流程&断开流程
-
讲一下什么是 eventloop
-讲一下代码的执行结果,并解释为什么
Promise.resolve().then(() => console.log(2)); new Promise((resolve, reject) => { resolve(); console.log(3); }).then(() => console.log(4)); setTimeout(() => { Promise.resolve().then(() => console.log(5)); setTimeout(() => console.log(7), 0); }, 0); setTimeout(() => console.log(6), 0); 讲一下什么是 prototype
一个矩形,水平垂直居中,且宽高比为 2:1
Vue 双向数据绑定实现(问的很细)
node用过吗,electron了解吗
有什么想问的
回答的较为顺利,不出预料几分钟后收到了2面通知.
二面:
二面面试官是人给人感觉很平易近人,给人感觉技术特别强,问题完全不按套路出牌,笑容渐渐消失,全程让我充满着卑微感和压迫感
1.tcp在哪一层?让你实现一个基于tcp协议之上的协议,你怎么实现。(其实就是实现一个http协议,问的相当细了,近20分钟都在讨论这道题)
2.webpack打包产物是怎样的,到底是为了什么,优化了什么,为什么要合并文件?
3.vue的diff是为什么,浏览器重绘重排前会diff吗,为什么?
4.实现一个单行容器内:左边一行文字,右边一个btn,文字边长过程中,不会把btn挤下去,而是文字超出省略
5.手写编程题:
实现一个累加函数,当最后一次调用传入空时,计算所有参数和,类似下面: const x = sum(1);
x = sum(1,2)(3,4,5)(6)() 6. 有什么想问的?
二面真是把我学前端这一年积累下来的自信心彻底击垮了,问题基本是没准备过的,完全考验临场反应和知识积累,面试官最后问我有什么问题时,我都已经放弃挣扎随便问了几个,没想到过了几分钟接到了三面通知。
三面: 三面面试官全程很严肃,主要问一些思想层面的东西了
实习经历?主要做什么?实习收获成长? 个人感兴趣的前端方向?目前研究状况?将来打算? 来道算法题:逆波兰表达式相关 有什么想问的?感觉没戏了,也就问了一下上面的题相关的东西 三面等了一个半小时,个人感觉答得也不怎么样,过了一会儿收到短信说30天内同步结果,个人感觉无望了