8.15 16:00 ~ 16:55
1、自我介绍 面试官:问一些js的基础把
(题目顺序不分先后)
2、js的原型和原型链,这里也会出原型链的场景题,问你指向哪里
3、js的作用域和作用域链,这里会出全局变量的场景题
4、js的闭包,并举出具体的应用。这里会让你写一个闭包的例子,里面会涉及到自由变量寻找的问题
5、js的this指向问题,这里会涉及到一点call/apply/bind
6、js的事件循环,这里会接着问具体的宏任务和微任务有哪些?这里会有一道setTimeout的场景题
7、问项目: 因为我简历上有一个组件库的项目
问了一个场景:如果我是用户,想要用你的组件库的button组件,想要自己定制一套主题,如何实现?
这里我只说了通过外部的props传入和暴露内部的方法给用户调用,他说有没有了解过主流的组件库是怎么使用的?
这里没答出来,欢迎大佬们解答
8、有了解过打包工具吗? 有,用的比较多的是webpack,vite比较少用。答了webpack是将vue代码/react代码转化为js认识 的代码
9、 webpack如何将vue代码转化为html、css、js的?要答出来的是Vue模版编译原理,里面涉及到的AST底层都要答
这里问了模板编译的优先级和render函数的优先级哪个高?
10、对虚拟DOM的理解?为什么要用虚拟DOM?虚拟DOM比真实DOM好在哪?
这里会出场景题:
面试官:如果我只需要改其中一个DOM的数据,那我直接使用选择器将他选择出来,再用innerHTML改变里面的数据的 值,会引起整颗DOM树的重新渲染吗? 这里答的不会,那用虚拟DOM的好处在哪呢?(这里没答好)
11、在问webpack的时候,说了一个webpack会使用babel语法将高级的es语法转化为兼容的低级的js语法,这里问还有另外的 方式吗?(面试官提示了:polyfill)
12、说一下nextTick的原理以及为什么要用nextTick,这里会出相应的场景题
13、最后问了typescript的相关内容: 出了一道ts的API --- pick的场景题,让我手写实现一个pick(没写好)
面试官: 我这边没有什么问题要问的了
反问:
公司的业务是负责哪部分? 这个要看具体的组分工的工作
公司的技术栈? 百分之99是vue,极少数的老项目用的是react,新项目都用的是vue3,老项目都用vue2
面试官很好,很和蔼,就是我太菜了.....
欢迎评论区的佬帮我解答不会的问题,本人双非普本,24前端菜鸡一枚,有幸在广州一家大厂实习....
#牛客在线求职答疑中心##快手##秋招#