前言
本人大三,发现大家都在投简历才开始准备。然后就投了字节跳动的飞书,收到笔试通知后,才发现了牛客网这个好东西。
刷了几题真题发觉自己完了,啥都不会,刷了三天题就去笔试了。感觉自己基本是凉了,谁知道居然收到面试通知,准备了四天就上了,人生第一次面试.....
虽然我这几天把面筋都啃了一遍,但还是有很多不太懂的地方,目测是凉了。
笔试
选择题 + 算法题 + 智力题
选择题基本跟前端没什么关系,都是数据结构和算法和网络的,印象较深的是二叉树的先序、中序求后序,闭包,Etag(当时完全不知道是什么)
算法题:从A到B有D的距离,中间有若干基站,距离起点Ni的距离,每个基站提供水Wi,起始有H的水量,每走一米减少一的水,每个基站花费的钱相等,问:求最少花费能到达终点?
智力题:64匹马,8赛道,只知名次不知时间,求最快找出前4匹马的方法
我选择题乱蒙一堆,算法80% 20% 0%的通过率,智力题15次(最佳13次)
一面 47min
- 自我介绍
- 重排重绘( )
- 设计一个百度搜索框(重点问了下面出现的提示要怎么设置样式?position?导致重排?)
- DNS是什么?解析域名、得到IP、创建tcp连接、交互(面试官:没了?然后就解释三次握手,首次返回html文档,请求css、js静态文件、四次挥手)
- 怎样移动一个标签却不导致重排?transform
- 怎么进行性能优化?首页、小图片拼接,样式内联
- html5的标签有哪些?说一下怎么用的?
- css3用过哪一些?border-radius、transition。。。
- cdn是什么?缓存
- 说一些http的状态码?早上刚背了一遍...
- 给一数组和一数字,求数组中出现次数大于数组长度除该数字的项?(去重、统计,这里因为一个if语句卡了好久,感觉很降分)
- 平时怎么学习前端?
- 二进制相加,给两字符串求值?我刚好早上看一个大数相加的例子,然后就改一下,说了一下思路
- 做过什么项目?讲一下项目的内容和用到的技术?(我没有用到什么牛逼的技术...)
- 箭头函数this指向和const声明的值
- 有什么要问我的?(尬聊了一会...)
中间有几次没有听清楚他问什么?然后反问了....感觉很掉分....编码的过程很尬,他引导了一下我,被看着写代码有点紧张,都没有考虑性能......
最尬的是最后问我有什么问题问他的吗....我其实没什么问题...强行憋出周末还在上班?
总而言之,面试官还是挺好的,只是我太菜了
前几天看见一个面经也是第一次面试面字节,一路不会然后就结束了的
不说了,上分去了
二面 57min
哇咔咔~我来更新二面了,时隔5天,终于迎来了二面。
这次二面出现了点状况,一面时我用的是电脑自带的话筒,第一次也检查过设备了,但是这一次居然不能用了。我超慌,因为我能听见面试官说话,但是他听不见我。。。
慌慌张张地重新进行设备检查,面试官在一边等着.......然后面试官超好人地问我要不加他微信吧,然后就全程使用微信视频。(其实我在侥幸是不是这样就可以手撕代码了)
当然是我想多了上问题吧~
闲聊
- 你做的项目是课程要求还是参加了些什么?(课程 + 实训)
- 为什么选择前端?(做项目时负责前端 + 感兴趣)
- 平时怎么学习的?
网络
- 问一下网络吧,讲一下tcp的连接断开吧(三次握手 + 四次握手)
- 讲一下http与https的区别(http + ssl,httpd连接的过程,http是明文传输)
- 我们前几天遇到一个问题,使用https也不安全,响应数据中途被修改了,比如说非会员被改成了会员,那你要怎么解决?(我愣住了,怎么不按常理出牌?思路:客户端收到假的,那么就要向服务器验证,但是又不能每一个响应都进行确认。https不是加密的吗?emmm,好像只是加密客户端传给后端的,那就后端也给前端一个对称秘钥?此时面试官点了点头表示满意)
- 那比如说返回了会员的数据,那么客户端后序的操作?(疯狂暗示我,答:那后端要生成一个会员的特殊标识,如果前端发送的请求中没有携带该标识,那么后序操作就不能有会员的特权....)
- 你知道session吧?(后端session 前端cookie)
- 那么后端的session要存在哪里怎么保存?(我当时想的是后端使用什么数据格式存储,但是不太会.....于是说存储在内存里面,但是内存太小,那就存在能够快速存取的设备里,SSD当时没想起,存在硬盘里的话读取就会慢且消耗大)
- 我问具体点吧,如果存在内存会有什么问题?(1.多个请求后内存就炸了,2.可以设置一个定时器,过一段时间消除会话,3.设置一个队列,满了就删除一开始的会话)
html、css
- 讲一下盒模型吧?(margin padding border content ...)
- 怎么修改盒模型?(box-???一时想不起,然后面试官就告诉我了)
- 讲一下css权重(!important,内联,外联,id。。。。)
框架
看你学过vue、react,问问看吧(连忙解释,react只是看过,忘得差不多了,vue实践过)
- 单项数据流和双向绑定的区别?(单项数据流是啥??一脸懵,面试官:比如父子节点传值。父子传值的优点嘛.....安全?子组件无法访问父组件其他数据?然后瞎蒙着就过去了)
- 你用过脚手架吧,那你说说脚手架应该有什么功能?(瞎猜的,1.压缩文件、2.能够加密?3. 比如less会简化代码,4. 去除一些无用的文件,其实还想说能进行兼容buble?)
编程题
终于来了.....
- 简单的,123456790 -> 1,234,567,890 每千位加个" , "
- 不能使用全局变量实现调用a()三次得到1,2,1......重复,使用了闭包存一个boolean值(面试官表示没想到,这种方法也可以的~)
- 实现function(func, times, wait ){},传入func每隔wait时间,执行一次,执行times次(使用async、await、for循环 setTimeout,忘了定时器单词,面试官提示了,面试官超好人的~~ 虽然最后执行不了,不支持async好像,但算过关了)
反问环节
这次我就有准备了,把刚才的代码题问了一遍答案,第二题面试官表示没有具体答案,想看看我怎么写,没想到我用到了闭包。第三题可以直接修改setTimeout的最后一个值,乘上i
然后就结束了......感觉挺舒服的,虽然被问到了几个没准备过的问题,但还算顺利。
面试官人挺不错的,还加了微信
HR面 27min
面试的是一个小姐姐,然后问的问题跟技术相关的比较少。
- 自我介绍
- 知道部门的工作吗?
- 为什么选择这个专业?
- 怎么学习的前端?
- 讲讲项目
- 前面几次面试的感觉?
- 有投其他公司的吗?
差不多就这些,个人感觉还不如问我技术问题,问这些反而让我有点难回答,就是比较尴尬......说完后她的反应也比较平淡......
听说hr面也会刷掉很多人,感觉有点凉凉~~~凉在最后一轮~~~
内推
字节跳动校招/社招内推码: PYANP5Y
全部评论
(25) 回帖