首先,面试官很和蔼,甚至我感觉和蔼过头了——他戴着牙套,长得很像我的有个高中同学,讲话也软绵绵的,不过听得出来是非常有实力的。
其次,面试环境非常嘈杂,各种噪音不绝于耳,怀疑是在一个办公室里面面试的,我甚至有时候听不清面试官在讲什么。
最后,面试官感觉是优点刻意的想跳过我和他的交流过程,想尽快的让我进行八股吟唱。这点稍微有点令人忍俊不禁。
不过总之,还是有收获一些东西的。
自我介绍。
从我的简历上面自己选了一个项目让我讲,并问了团队规模,Github 上怎么去协作一个项目。
你的这个专业为什么会让你接触到前端这个方向?你是怎么看待前端这个岗位的呢?
GET 和 POST 请求有什么区别?POST 和 PUT 请求有什么区别?
说一下前端存储,LocalStorage、SessionStorage、Cookie三者的区别和特点。LocalStorage 在不同的 url 之间就不能够共享了吗?
LocalStorage 在 同源 之间是共享的。
说一下跨域。
说一下节流和防抖,并且描述一下这两者分别在什么情况下使用?
说一下 CSS 中的选择器分别有哪些?这些选择器的优先级又是如何?
怎么实现一个水平垂直居中。
说一下 flex 布局中的 justify-content 属性,它只用于水平居中吗?
opacity: 0 和 display: none 两者有什么区别?
v-if 和 v-show 两者有什么区别?
opacity 从 0 到 1 触发的是回流还是重绘?
说一下事件委托。
有用过 React 吗?
Promise.all 和 Promise.race 两者有什么区别?有了解过 Promise.allSettled 吗?
代码题:实现一个函数,传入一个 list 数组,list 内部是一个 {name: string; value: number}
类型的item,需要返回一个以 name 为键、值为 value 数组的对象。
代码题:实现一个函数,传入 10 个 machine
对象,每个对象中都有一个 update
的异步方法,这个函数中每次智能同时执行三个 machine
的这个方法,其他的方法需要等待三个 update
进行完后方可开始执行。
反问阶段。
总体来说面试体验很不错,如果我在回答的过程中出现了回答错误,面试官是会直接来纠正我的错误并指出正确的回答,让我觉得收获比较大。
算法题第一题比较简单,第二题有点吃力,不过最终还是写出来了。
最后一面是顺利过了,不过因为已经答应了蔚来的 offer,因此二面准备不打算参与了。