快手前端实习面经
一面
算法题
- 返回倒数第k个节点(用了两种方法,没实现最优解)
- 用两个栈实现队列
Vue
- Vue的生命周期
- 父子、兄弟组件传值
- 讲一讲Vuex,为什么使用Vuex
自己提到了用Event Bus的思想来实现Vuex,面试官就多问了一下并表示赞同- 讲一讲slot
浏览器原理
- 讲一讲事件队列,包括宏任务微任务
- 宏任务有什么,微任务有什么
渲染方式
- CSR和SSR是什么
各自的优缺点
- 客户端渲染速度和服务端性能要求
- SEO上的区别
网络
- Cookie、localStorage、sessionStorage
强缓存、协商缓存
- 我讲了HTTP1.0和HTTP1.1不同的缓存请求头响应头,HTTP1.1相比HTTP1.0缓存上的优势
JavaScript
- 讲讲有几种基本类型
Symbol有什么使用场景
- 答了自己在手写call、apply的时候用到了
一面的面试官比较满意,面试结束5分钟后约了我下午第二面
本来想推几天,结果HR小姐姐骗(没错真的骗了我)我说只是聊一聊不面技术
二面
一上来招呼都不给我打丢了两道算法题。。。说好的只是聊一聊呢?只能一脸懵逼地读题
算法题
- 链表反转(卒。。。)
- 字符串大小写的排列组合(卒。。。)
Vue
- 双向绑定(只讲了Vue2.0,忘记讲Vue3.0的了)
- 如何判断应该渲染更新哪个DOM(只讲了diff算法)
- diff算法是怎么实现的(卒。。。)
操作系统
- 进程与线程的关系(只答了1:n的关系)
- 为什么要有进程和线程之分,有什么优缺点,什么时候应该开进程什么时候开线程(卒。。。)
网络
- 强缓存、协商缓存
- TCP三次握手四次挥手(讲的太多面试官问我讲完了吗。。。)
其他
- 问了我实习期能给多长
- 让我进行自我介绍
最后
感觉自己第二面面的很差劲,但是面试官还是说我答得都还可以
但是自己几斤几两还是知道的,现在处于抱着希望忐忑不安的状态
坐等通知。。。
打电话给HR才给我查结果,说是二面面试官给我挂了