整体面试时长70分钟左右,面试官分模块来问的,主要考察深度和广度,项目没怎么问
1、上来自我介绍,顺带问了下项目的背景,实习做的还是在学校做的?
计算机网络问题
2、HTTP协议,历史发展过程,每一个版本新增了哪些东西,详细说一下?(只答出了HTTP1.0--HTTP2.0的新增内容)
3、浏览器缓存机制,有哪些策略,详细说一下?
4、localStorage\sessionStorage\Cookies是什么,区别?
5、由第四题延伸出一道场景题目,当localStorage存储满了的时候,如果是你你会怎么办?
6、状态码,每个状态吗是干什么?
6、还有几个计算机网络问题,忘记了
Vue框架问题:
7、Vue2和Vue3的区别?Vue2数据响应式原理?Vue3数据响应式原理?
8、Computed和watch的区别是什么?
9、了解过React Hooks吗?
10、ES6新增了哪些对象?
11、模块化了解过吗?延伸出说一下CommonJS和Es Modulde的底层原理?
12、TreeShaking说一下?
13、了解过TS和NodeJS吗?(没怎么学。。说Python来写后端)
14、路由懒加载
15、修饰符有哪些,作用是什么
Js语言框架问题:
15、如何判断基本数据类型和引用数据类型?
16、基本数据类型和引用数据类型的区别?(主要是数据存储来说的)
17、typeof \ instanceof的实现原理?
CSS相关问题:
18、做过移动端适配吗?说一下你的方法?
19、说一下rem原理,引申出逻辑像素、物理像素的概念(逻辑像素答得不是很得体)
20、问一个冒号和两个冒号分别是什么,当时反应过来问的是选择器,他们两个的区别?
21、你用过哪些CSS预处理器?--> sass并说了他的特点,应该多说几个的。。
数据结构:
22、快排,时间复杂度,你理解的logn的时间复杂度,思想
23、动态规划思想,举一个动态规划的例子
代码题:
并非是常规的力扣题目,是一道场景题:给你多个URL,获取数据并返回到一个callback数组中,有并发数量的限制,还要考虑,异步任务返回的顺序问题,因为调用的时候要对应
我使用的是原生的AJAX请求,结合Promise来写的,写的差不多跟面试官讲了思路。
反问:反问了一个问题?
总结:总的来说面试官比较友善,会给你实质性的建议和指引,面试体验没的说,不过有一些出乎意料的是计算机网络的问题考的偏多(我觉得我没答全),JS问题偏少,
还是注重基础的考察,而且会问的比较深!
#快手校招#