【字节跳动】前端岗-1,2,3面+HR面(4.11oc)
3.30 一面,一面结束3分钟二面
4.07 三面,三面当天下午通知HR面
4.08 HR面,HR面当晚询问HR小姐姐说通过了Offer在审核中
许愿尽快oc,孩怕夜长梦多,保佑保佑
一面
自我介绍
怎么判断JS的数据类型,所有方法
怎么判断对象和数组,所有方法
讲一下事件循环的过程,微任务,宏任务
HTML link标签的伪类有哪些 怎么用
想实现一个div标签,宽高成比例变化怎么实现
HTTP请求常用的方式
Head和option是做什么的
Get和 post的区别在哪,为什么
代码输出?
[1,2,3].map(parseInt)
实现一个函数
get({a:{b:[1,2,3]}}, ‘a.b[0]’) => 1
二面
自我介绍
介绍项目
讲一下研究生阶段做的科研任务。这一块问了很多,面试官应该是很感兴趣
讲一下url从输入到展示页面的过程
CSSOM和DOM在浏览器中是怎么进行构建的。
讲一下token从开始到使用的过程
前端受到常见的攻击,过程是什么,怎么防御
https比较http的安全性体现在什么地方,一定要用https吗?对http进行改造可以吗
Promise相关,与async,await关系
三级事件模型,每一级的特点
事件委托
垃圾回收机制,常用的是哪种,引用计数的缺点。
手写Promise.all
- 岛屿数量
三面
介绍项目
复用的过程?然后面试官捏造了几个BUG问怎么优化
怎么优化图片的onload函数?然后又捏造了bug问怎么优化
Session和token的区别
session与cookie的关系
浏览器通过session认证用户状态的过程
在与后端进行通信的时候有哪些地方是前端可以优化的
CSRF的过程,如何应对
CSRF攻击时需不需要拿到本地的cookie(不需要)
闭包是什么,具体的应用有哪些
JQuery源码为什么是一个匿名自执行函数,拓展到了webpack打包后的文件。
写一个深拷贝,考虑对象里有函数的情况
实现一个o(1)复杂度查找的队列
反问面试官 评价是写代码的能力很强,但是在项目工程化上太差。
HR面
介绍下研究生阶段做的东西
介绍遇到过的挑战,你得解决思路是什么
什么时候可以实习以及实习的时间
介绍一下你考研的过程
HR面很短就 15min 结束