总结
一面问的都是常规基础题, 主要考察对知识掌握的广度,初级前端需要的技能栈基本都有所涉及(不超出简历所写的技能范围)。
二面的时候, 因为面试官对我的简历比较感兴趣,所以将近一半时间都在问项目, 还有我自己和前端无关的一些动手折腾的经历。
大概考虑到自己还是存在比较明显的项目经验短板,所以加了三面,把我推给了搞开源框架的小程序负责人,这一面比较难, 会扣细节谈认识,然后开屏幕共享,手撕中等难度的JavaScript题,编程题和算法题。
一面
滴滴的面试非常准时,视频会议的入口在开始前十几分钟前才以短信的形式发过来。两点钟的面试,对面一点五十九分打开摄像头。面试官是一个小姐姐,很漂亮人也很温柔, 听鼻音是感冒了,但依然会很耐心地和你说不要紧张,问题没答好还会帮着给提示,总之面试体验非常nice啦~让我这个面试经验几乎为零的小菜鸡不至于太紧张。
1.1 盒模型
1.2 怎么实现一个水平居中
2.1 JavaScript有哪些数据类型
2.2 JavaScript是单线程还是多线程
3.1 项目中有遇到过跨域的问题吗,你是怎么解决的
3.2 现在使用的浏览器是单进程还是多进程
3.3 描述一下浏览器渲染过程
4.1 常见状态码有哪些
4.2 追问: 是在命中强缓存还是协商缓存的时候才返回304呢?
4.3 追问: 那聊聊浏览器缓存
4.4 三握手的过程
4.5 OSI七层模型
4.5 追问: HTTPS位于哪一层呢
5.1 用过哪些Git命令
5.2 怎么切换到新分支
5.3 手上的代码还不足够commit,需要暂存当前工作并返回上一个commit,应该用哪个Git命令
6.1 React和Vue的区别
7.1 this指向分析
7.2 异步分析
二面
二面的是个能明显感觉到技术很强的小哥哥
后来加了微信才知道,小哥哥已经在滴滴工作四五年了
1. 聊项目
这一块都是对着简历里写的东西问的,不只有项目,还有自己以前做的各种奇奇怪怪的折腾和开发经历
不展开来说,只把问题记录一下吧~
1.1 你用lua脚本的写的一个小应用,介绍一下
1.2 追问: 怎么实现这里面的广告拦截
1.3 展示一下字体设计
1.4 组件库项目的设计思路
2. async有用过吗, 它是怎么实现异步的
3. ES6怎么兼容低版本的浏览器
4. 你简历上写了对V8有过了解,那么说说JavaScript和C有什么区别
5. 追问: 你说C编译生成了一个exe文件,那这个exe文件里具体存储的是什么呢
6. 说一说你对JIT的认识
三面
第三面是加面(滴滴的前端实习本来只有两面),二面的小哥哥把我推给了滴滴小程序部门的leader,这位大佬主导开发了滴滴一个开源框架mpx,但其实给人感觉特别平易近人
1. react有一些新特性,比如fiber,谈谈你对react fiber的认识
2. 说说你对打包器的了解
2.1 追问: 怎么引入依赖
3. 你在简历里写到,用styled-components实践了CSS in JS,谈一谈你的认识
4. 性能优化
5. 手写: 组合继承
5.1. 追问: 分析你写的组合继承中的原型链
7. 手写: async
8. 算法: 三数之和
至此,三轮实习生面试所有能回忆起来的内容结束
验证码登录>
验证码登录>
自动登录 | 忘记密码?
密码登录>
自动登录