字节抖音电商前端1 2 3面+hr面(OC)
4.1已经OC
刚面完HR! 希望能拿到offer呀! 求求了~
一面 3.16 55分钟
因为没有录,所以只能靠回忆,有点久了 可能有一些忘记了。
- 自我介绍
- 简单介绍了下研究方向和以前做的项目
- 说一说计算机32位和64位有什么区别(不是很懂)
- 为什么64位之后就没有128位了(不是很懂)
- 说说react的生命周期(说了15.x的)
- 你知道react16新的生命周期吗
- reactHook 了解吗?
- 了解到什么程度。(没继续问了)
- 说说es6 let var const的区别
- 说说下面哪些是允许的操作:
const arr = [1,2,3] arr.push(4); arr.splice(1); arr[1] = 3; arr = [1,2,3]; arr = [2,3];
- 写道题:太紧张了,有点急,于是直接写了暴力的。分析复杂度
从两个数组中找出共有的元素。 示例: arr1 = [1,2,3,4]; arr2=[3,4,5,6] intersection(arr1, arr2); // output [3,4]
- 复杂度有点高,能不能用空间换时间。于是我用了map又做了一下,问了复杂度。
-
- 我看你循环都用的for, 你还知道其他的方法吗?(foreach, map, for of , for in)
- 这几种方法你对比一下。
- for in为什么效率慢
- 那你觉得foreach 和 for of 两个效率如何?为什么?
- 你用过Array.sort吧?
- 那你知道它是怎么排序的吗?(我不是很清楚,我只记得好像数据少是用的插入排序,后面用的快排?以前看过,但是时间太久了忘了😭)
- 那如果让你设计一个排序,你会怎么设计?(答得不好...)
- get post 的区别
- 如果我要实现登录,应该用get 还是 Post。
- graphql 和 restful 有什么优缺点
- graphql 是怎么封装的? 它的底层是post 还是 get。
- 一个场景题,让你实现登录,你会怎么做。(根据我说得,又问了几个问题,具体有点记不清了,但是都答上来了)
面试官:你觉得你答得怎么样?
我:基础的有一些没答好。
面试官:基础还好,就是有时候你比较急,需要我去引导你,你才能回答我想要问的,以后你可以多想想,不过没事,你以后面试多了就好了。可以看出你项目经验还挺丰富。这几天保持手机开机,下一面会打电话约。
过了一天约了3.19的面试。
二面 3.19 57分钟
这一轮觉得自己表现得不是很好,当时面完心态有点蹦。
- 说说flux单项数据流模型是怎么样的。(没答上来)
- 了解跨域吗?有哪些解决的方法
- CORS设置cookie的请求头是什么?
- cookie设置完放在哪里?
- cookie有什么特点?
- 输入url 到 显示发生了什么?
- 建立http连接什么时候断开?
- 如果是keep-alive 会一直连着吗?
- 那是什么时候释放的?
- 解析html 的时候会被阻碍吗?
- js可以不让他阻碍html 解析吗?
- 可以这么设置? 在哪里设置? 设置什么?(一通问)
- 回流和重绘说一下
-
输出什么? var a = 3 (function (){ console.log(a) var a = 4; })() var a = 3 (function (){ console.log(a) let a = 4; })()
- 换题复杂一点的。根本不是一点...一道this指向,然后结合new 还有原型链的。问5 6个值的输出是什么。好复杂,我看了好久,最后估计也答得不好。因为题被其他的题覆盖了,所以没了。
-
<style> .green { background-color: green; } .red { background-color: red; } .blue { background-color: blue; } </style> <body> <div class="green blue red"> fsdfasdfasd </div> </body> 背景是什么颜色的? 为什么?
- 了解过发布订阅模式吧? 那手写一个,10分钟写一个吧。
- 匆匆忙忙10分钟写完了。面试官看完,你觉得有什么问题吗? 答:看不出来。
- 你这个只能发布订阅,不能取消。 addEvenListen是可以取消的。答:这个好像得传入同一个函数地址值才可以。面试官:你就实现一个和它一样可以取消的。
- 写了下取消这个功能。面试官:你觉得你这哪里有问题吗?答:不知道。 面试官:你这个如果订阅的类型不存在,就会报错。改了一下。
- 面试官:你觉得你还有哪里有问题吗? 答:我不知道。 面试官:你只取消了一个就break了,那我要多次订阅还是没完全取消的。 答:对对对。 然后改了一下。
- 面试官:你觉得你还有问题吗? 答:我不知道。 面试官:你看看你发布,这个发布执行外面传进来的函数,这个函数万一执行出错,整个就停止了。 答:对对对,那我加个try catch。 此时心态已经崩了。😭
- 那我们继续做一题。15分钟。
已知数组 a=[1,[2,[3,[4,null]]]], 实现数组 b=[4,[3,[2,[1,null]]]] ,考虑n级嵌套的情况
我是用递归吧数据取到数组里,在使用递归生成嵌套的。 - 15分钟到了,写得怎么样了? 我:还没来得及测呢。面试官:没事,我已经大致理解你的思路了。
- 反问: 我脑袋已经是浆糊了,就没问了。
面完觉得自己没答得很好,以为挂了,结果周一答电话约三面。但是三面面试官没什么时间,于是约到了周五。
三面 55分钟
- 自我介绍一下
- 实习都做了什么项目介绍一下
- 挑一个讲一下你主要做了什么
- react的设计思想介绍一下
- 原型链介绍一下
- 事件循环介绍一下
- react 生命周期
- Vue node react 都用到什么程度
- vue的双向绑定介绍一下
- webpack 知道吗?(答:没有在项目中使用过,但是自学过一点)
- 介绍一下webpack主要的几个概念。
- graphql 介绍一下(项目)
- reactHook 了解吗? 平时用什么 (用的比较少)
- 为什么要又reactHook这个东西。你觉得它解决了什么问题。
- http/2.0 和 http/1.1 有什么改进的地方
- js能表示的最大数是多少(答:我记得是个双精度的)
- js的数字是怎么表示的(答:我记得有40几位表示小数位,10位表示偏移量,其他的忘了😭😭😭😭。以前看过,最近没看又忘记了)
- 排序你知道哪些。
- 具体在什么场景使用什么排序呢?
- 说一下快排的思想。
- 来我们写个题
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb"
这题我好久之前做过(大概一年前),当时没做出来,看的题解。看了题整个人都慌了,脸都红了。最后冷静下来,用了估计有20分钟做出来了。 - 前面没答好的你有回去在看看嘛?
- 32位和64位有什么区别
- sort的底层实现?(呜呜呜,我已经忘了)
- 能实习多久?
- 反问:问了下主要业务和技术栈。
总体感觉:字节的面试还是很看中动手能力的,每一轮都会让你写点代码。
3.29 hr面 12分钟
- 为什么想实习
- 前两段实习有什么收获
- 你在什么时间有过焦虑过
- 你觉得你有什么是需要提高的
- 如果有很多Todo你会怎么去安排
- 你怎么平衡生活和工作
- 有其他offer吗? 怎么选择?
- 能实习多久
说offer审核需要1-3天出结果,到时候会告诉我。
希望能过呀!!
希望能过呀~~求求~ 求OC!OC!OC!
给个Offer吧~