第一次参加了字节的面试吧,之前一直听说字节注重基础,要求很高,所以一直小心翼翼。总的来说题目都不是很难,各领域的问题也挺基础,但菜鸡如我二面还是炸的很彻底,怎么就心大到随便复习几小时就上了。。由于记忆原因,可能题目顺序有所偏差,但大致内容没什么问题。
一面
HTTP各状态码的意义。
这个我答了200、301、302、304、404、500,后来面试官问其他知不知道,只好悻悻。。(很久没看确实忘了)
CSS实现三角形。(敲代码)不用多说
CSS position三种主要定位。不用多说 (一个月前看过,绞尽脑汁)
CSS盒模型。不用多说
ES6继承。不用多说
实现一亿以内大写数字转换,如
三千五百四十一万四千零一->35414001
三千五百四十一万->35410000
八千万->80000000
这题我大概写了二十来分钟,由于时间原因,结果的最后一位不符,可能需要再调试一会,面试官就说直接下一题啦,不清楚大家面试时会不会写注释,面试官刚开始对我的逻辑理解有点偏差,后来我和他详细梳理了一边后,可能想法到位了就过去了。
缓存策略。不用多说。
跨域。不用多说(不记得是一面还是二面了)
惯例,你有啥想问的。
好像没了吧,想起来再加。一面结束后,面试官人很好,让我等待二面,大概十来分钟。
一面
死亡二面,说是死亡不是因为很难,而是我真的准备的太少了。
问了两个基础问题吧,有一个是类数组,具体想不起来了。
敲代码 JS
//设计一个简单的任务队列, 要求分别在 1,3,4 秒后打印出 "1", "2", "3" new Queue() .task(1000, () => { console.log(1) }).task(2000, () => { console.log(2) }).task(1000, () => { console.log(3) }).start() class Queue { }
其实没啥难度,我从未见过这种题也写了个大概,但忘了数组的删除第一个元素是shift还是unshift是真的尴尬。。同时链式调用该如何返回啥我也不太清楚。。我觉得这已经不是菜不菜的问题,是我太嚣张了。
敲代码 算法
//硬币找零问题:有面额为d1...dn的硬币,和要找零的钱数,找出所需最小硬币个数的方案,例如,美国有以下面额(硬币):d1=1, d2=5, d3=10, d4=25,如果要找36美分的零钱,所需最少硬币是 [1, 10, 25],即满足如下输出: const minCoinChange = new MinCoinChange([1, 5, 10, 25]); console.log(minCoinChange.makeChange(36)) // [1, 10, 25] const minCoinChange2 = new MinCoinChange([1, 3, 4]); console.log(minCoinChange2.makeChange(6)) // [3, 3] class MinCoinChange{ // to do makeChange() { } }
我用贪心写了一个,但有的情况无法考虑全面,想尝试动态规划,面试官直接下一题了。。诶两年前学过这种题哪还记得。。(撞墙
你对Vue的理解。个人发挥
你对Koa的理解。个人发挥
惯例,你有啥想问的。
貌似没了吧。整个过程面试官十分严肃,也没持续多久(大概40分钟)然后直接让我等HR联系了。。估计是凉了吧。。我看字节都是有三面的。
知耻而后勇,砥砺前行。
全部评论
(7) 回帖