快手 效率工程 前端实习面经 一二hr面已过
写在最前
楼主是找的日常实习,不需要转正,上周五一面,本周一二面hr面,整体过程很顺利,快手效率很高,面试官和hr人也很好
一面(大约75min)
介绍前端掌握程度
你的成绩,将来打算
vue的优势
vue数据更新机制
基本DOM API
em vw
水平居中
事件循环机制
跨域场景和方式
嵌套callback美化
代码题:promise相关
setTimeout(function () { console.log(1); }); Promise.resolve(function () { console.log(2); }); new Promise(function (resolve) { console.log(3); resolve(); }).then(function () { console.log(4); }); console.log(5);
ES6合并数组
ES6箭头函数
for...in和for...of
介绍绝对定位position:absolute
z-index,不同层叠上下文的元素显示顺序如何比较
数组API(列举一下)
代码题:判断数是否是2的次幂
判断一个整数num是不是2的次幂
输入:num
输出:true
或false
- 代码题:快速判断1-100数组中缺失的数字
元素为1,2,...,100的数组(非有序)中,有一个缺失的数字,如何找到缺失的数组
输入:99个元素的数组
输出:缺失的数字
- 代码题:数组转树型结构
将如下数组转化为树结构:
[ {id: 1, node: 'root', parentId: 0}, {id: 2, node: 'node1', parentId: 1}, {id: 3, node: 'node3', parentId: 2}, {id: 4, node: 'node4', parentId: 2}, {id: 5, node: 'node5', parentId: 1}, {id: 6, node: 'node6', parentId: 3}, {id: 7, node: 'node7', parentId: 2}, ]
代码题:树的广度遍历(口述)
有没有关注前端业界动向,例如ES2020?
java重写的方法可以声明为private吗
前端项目构建的流程
JavaScript和java中面向对象的区别
java中重写和重载的区别
java中重载返回值类型必须相同吗
反问环节
二面(大概30min)
- 实习时间
- 到岗时间
- js闭包的理解
- 举例描述一下闭包使用的业务场景
- 前端模块化了解吗
- 新技术怎么学习的
- 最近在看什么书,能列举一下吗
- 代码题
//实现以下输出 let inArr = [ { company: 'COM1', customer: 'CUS1' }, { company: 'COM1', customer: 'CUS2', }, { company: 'COM2', customer: 'CUS3' } ] let outArr = [ { company: 'COM1', customer: ['CUS1', 'CUS2'] }, { company: 'COM2', customer: ['CUS3'] } ]
hr面(30min)
- 自我介绍
- 项目相关
- 到岗时间
- 实习时间
- 反问环节
写在最后
hr面当天晚上就聊薪资福利,以及确定到岗时间,目前正在等正式offer下来,祝大家一切顺利!
(最新:答主已经收到offer啦,最近两周入职)