面试记录
字节跳动(ByteDance)--二面挂
20230215凌晨在字节内推官网投递番茄小说前端实习生
20230215下午接到HR的电话,通知由于岗位名额,简历转至技术中台前端实习生,约在下周一16:00-17:00一面。之后开始看之前人的面经,没有刷算法题,为后续埋了伏笔。
20230220一面
- 面试官主要问
- 自我介绍
- Javascript的类型,常用的类型函数
- 原型链
- 实现instanceof:虽然之前写过,但是忘记了
prototype
只有在构造函数上有,对象上存在的是__proto__
,导致没成功运行 this
指向的题目,给了一段程序,要求思考this指向给出输出: this动态绑定上下文,函数编译绑定作用域,然后结合就能给出结果- 实现body内容不够,Footer位于底部,内容多时Footer紧跟Body效果:用了flex,其实还应该加上body的min-height是100vh才行,不过面试官也没看出来。此外还可以用relative布局将Footer的bottom设为0,并将父元素设为定位元素。
- 算法实现一列数字排列组合后,比该数字大但最接近的数:从个位开始,循环向高位扩展,循环内交换对应位数字。当时太过紧张,没写出来,大概说了思路。
- 实现微信扫码思路:
- 数字精度:Javascript中的是浮点数
- web攻击方式:
- HTTP和HTTPs
- 实现sleep函数:我本来想用await实现的,但是promise不知道怎么写,也就说了思路。
- 应该还有一些,想不起来了
- 一共面了70min,全程都在问,好在之前看了一些面经和面试题,点名表扬这个面试题大全
- 晚上7点收到HR通过消息,约在第二天下午17:00-18:00面试
- 特地看了promise这部分,感觉之后应该稳了
- 面试官主要问
20230221二面
- 面试官问
- 自我介绍
- 不是科班的,怎么进入前端的,怎么学的
- SQL查询: 我都很久没写过sQL了,而且面的前端,操作SQL很少,我就凭记忆说了思路
- 实现Promise.all:不会
- 实现promisify: 不会,这个实现确实离谱,正常直接用就完事了,我也确实没看了那么深入,对Promise仅仅会用而已。而且面试官英语很烂,单词都不会。
- 最大连续子数组:经典的算法题,我手写了一个垃圾算法,结束了看自己1年前的刷题记录,发现应该用动态规划秒解。题目还是要经常刷才能对答如流。
- 对于比如抖音业务,应该统计用户哪些信息:我说用户点击数,时长,种类,做一个群体和个人的画像。他让我再扩展一下,我确实不知道,然后他说计算每个用户带来的广告收益,定义一个指标,呵呵。
- 面了40min,感觉面试官没什么准备,虽然我也没准备好。
- 晚上8点多也没收到HR回复,11点去官网查看面试状态已经变成
已结束
,说明已经挂了。
- 面试官问
总结:
- 算法题面试前需要经常看
- ES6新特性的原理和实现要仔细研究
- 字节前端确实比较卷,感觉二面问了一些完全不会用到的题。