双非本好惨,简历几乎全挂,几千年才有一个面试机会,写写面经积点好运
网络很卡,一个多小时网络就卡了快20分钟,根本没问几个问题,回答的磕磕绊绊的,不过面试官人很好,居然给我过了
一面:
1、自我介绍
2、问了点项目啥的,怎么学的
3、vue2、vue3、react16.8前后区别
4、koa中间件
5、webpack了解过吗,打包流程,loader、plugin以及区别
6、pnpm了解过吗,为什么快【忘记了就记得一个软硬连接啥的】
7、js原型链
8、写import和require的时候是干了什么【我回答的是_webpack_require的内容,但是面试官好像没太听懂】
9、ts工具类【然而我也忘记了,就记得一个pick】
10、开放题,100个人的前端团队开发流程、分支模型是怎样的(乱答的,没进过大公司不清楚)
11、算法:重排链表【该死,没刷过这题,我说我没见过这题,让面试官提示,最后面试官给出思路,让我试着写写代码,代码没跑起来】
emmm大善人,算法题都没写出来,还能让我进二面
二面:
1、自我介绍
2、项目、实习问了好一会【问我遇到什么很大的难题,表示接触的项目不是很复杂,也没遇到过】
3、js执行顺序【回答的eventloop】,界面渲染完成后,点击一个button,触发回调是怎样的【我说点击的时候把回调添加进事件队列,然后取出执行,面试官说我没get到他意思】
4、写代码,问输出顺序
5、考this
var name = 1 var obj = { name: 2, getName: function () { console.log(this.name) } } setTimeout(obj.getName, 0);//输出什么?输出1,怎么改让它输出2
可以改成bind(obj)或者()=>obj.getName
改了之后又问严格模式下,输出什么【表示严格模式下的特性确实忘记了】
6、setTimeout最小延时(4ms),setInterVal呢(忘记了),这两者区别,以及setTimeout模拟setInterVal区别(我说setInterVal会跳过,问我怎么跳过的)
7、npm install(没来得及背),问我package.json的^0.0.1的^什么意思,还有别的什么符号吗(我真想不起来了)
8、写题:字符串解码
说我浏览器内核那块基础不太好,就是停留在会用