跟谁学前端面经
一面(5.12):
面试官先介绍了一下面试流程,还说如果听到我这边有敲键盘的声音不要介意,是他在做面试记录。
- 自我介绍
- 拿了哪些 offer 了
- 平时怎么学习的前端
- 前端三剑客最熟悉哪个?(我说 JS,好家伙,后面开始问我其他的)
- 对 HTML 语义化的理解?
- div 上下居中方法
- position 有哪些?absolute 是相对什么定位?
- CSS 继承属性有哪些?
- 三栏布局方法(flex、圣杯、双飞翼,还说了后两者的区别)
- img 标签理解?title 和 alt 有什么用?哪个更重要?
- 知道 SEO 吗?说一下(面完总结才发现面试官是在引导我,先问了 html 语义化,再问了 seo,其实这两个问题是有关联的)
- 事件流是什么?事件冒泡和捕获的区别
- 怎么判断数据类型(我说了 typeof、Object.prototype.toString.call(),面试官问还有吗?我又说了 instanceof、constructor、ES6 的 Array.isArray())
- JS 数组方法有哪些,各个有什么作用,返回值是什么,是否改变原数组,都说详细点(这里我说了很多,面试官问你说了这么多平时有用到吗?我说:刷题的时候都会尽量去用到,以增加熟练度)
- 接上个问题,面试官说其实工作中用得比较多的是 find()、findIndex()、filter() 这三个方法,你能说说这三个方法吗
- 做题(两数组交集、二分法查找,都挺简单的,之前也练习过,所以写得很快)
- 你知道的浏览器缓存方式有哪些(这个问题大家应该都很熟悉,我说了很多,从 cookie、localStorage、sessionStorage 定义、区别、适用场景等说到了 http 缓存策略,面试官最后打断了我。。。哈哈面试中一定要把握机会展示自己的强项)
- 问我周围同学就业情况
最后面试官就说今天到这里吧,因为是上午11点开始面的,50多分钟。我一度以为自己凉凉了,因为我看其他人的一面面经都问了好多,像 webpack、ES6、vue、性能优化等都没问到。。。
二面(5.14):
一面后第二天早上收到了二面通知。
面试官上来说面试时间大概 40 min。
自我介绍、offer 情况,哪儿的
说一个前端方向的项目(可能是我简历上有个后端项目才这么问)
我先是介绍了项目,使用的技术栈是什么,然后说技术难点有哪些
说技术难点的时候直接打断了我,问我登录是怎么做的
我从登录流程、怎么记住登录状态、“记住我”是怎么实现的,怎么跟服务端进行交互,cookie、session、token 这些方面介绍,中间也有打断,然后一直被问到不会。。。
发了个链接开始做题,一共五道题
(1)this 指向相关(被问为什么)
(2)原型链相关
(3)事件循环相关(这里考到了 setImmediate,它是 Nodejs 中的一个宏任务,对应的是 process.nextTick() 微任务)
(4)给了一个对象数组,每个对象都有 key 和 parentKey,需要将每个对象根据它的 parentKey 添加到对应的 key 对象中,用 children 保存,输出最后转换的结果,题并不难,但是给了好长一串,差点看晕了,越想越复杂。。。
(5)数组平衡点(写完后问我还有没有其他方法,没想到,然后到40min了,就叫我下去想)
下来验证了一下,前三题和最后一题做对了,第四题少了一个 if 判断。我在做最后两题的时候尽量去用了 ES6 中新增的方法,filter 和 reduce,还有箭头函数等,还问了题目的边界问题,想的就是尽可能地多展示自己,把平时学的都用上(死马当活马医呗)。
反问(业务、新人能得到哪些培训)
又没问 webpack、ES6、vue、性能优化,我之前可是准备了很多的呀,就想着怎么展示呢,结果一个没问我,这种感觉真的难受,有力使不出,就好像面试官随便问问,刷刷 kpi 啥的。面完就感觉自己没了。
5.14已OC
吃晚饭的时候突然接到了 hr 的电话,说我通过面试了,然后给我介绍了公司情况,待遇等,晚上7点多就收到 offer 了。
6.3收到裁员消息
早有心理准备,还没进入社会就被毒打了一顿,时运弄人,现在怨谁都没有用,还不如静下心来好好学习。
磨难只会让我变强,被裁的 hxdm 继续冲啊!
#面经##校招##跟谁学##前端工程师#