【携程】前端岗-线上一面总结

一直潜水刷大佬们发的面经,今天写面经总结一下:

  1. 问:你是控制专业的为什么选前端,平时怎么学习前端?

    答:主要毕设和项目都是做系统前端的,后面逐渐对前端感兴趣了。感觉JS很有意思。学习前端主要看MDN、JS权威指南、JS高级程序设计和两本关于Vue.js的书籍(深入浅出Vue.js和Vue.js设计与实现)。

  2. 问:既然你说JS很有意思,说一下JS的继承机制。

    答:这里先解释了原型和原型链,然后解释6中继承方式的实现方法以及缺点,中间掺杂了其他内容的介绍(new关键字的原理,Object.create方法,ES6的class和extends关键字)。感觉答的还可以。

  3. 问:了解JS的异步嘛?

    答:这个问题比较大,一时没想好从哪里讲起,刚好面试前在看Promise,脱口而出异步的本质是回调(这个没考证过,只是个人感觉)。后面组织了一下语言,开始从JS单线程讲起,再到事件循环,再到宏任务微任务。

    追问:哪些是宏任务,哪些是微任务?

    答:宏任务有setTimeout、setInterval和dom渲染,微任务有Promise.then。

    追问:请求是宏任务还是微任务?

    答:这里对请求理解不够深刻,想到现在用期约来封装请求,回答了微任务。

  4. 问:了解模块化么?

    答:不是特别了解。说了CommonJS和ESModule,练两个导入方法不一样,一个用require一个用import。

  5. 问:了解TS么?

    答:不是很了解,想更深入学习JS后再学TS。

  6. 问:了解Webpack么?

    答:不是很了解,只知道是一个构建工具,可以把很多文件放到一起提升性能。(一套三连问直接被带走)

  7. 问:你们项目都是Vue用的多,说说Vue的响应式原理吧。

    答:这里先讲了MVVM设计模式,再讲了Vue2的响应式原理。

    追问:想让响应式只触发一次,后面如何修改变量,页面上的内容都不变化怎么实现?(这里没太理解面试官的提问)

    答:这里我隐隐约约猜测可能跟Vue3相关,变量如果不设置ref或者reactive的话不会触发页面更新?这个问题答的很乱,有无大佬能够解答。

  8. 最近有关注什么技术热点么?

    回答了基于WebGPU的前端3D可视化展示这个方向。

  9. 反问,问了部门技术栈,对于前端学习有什么建议。

总结:基本上问学习经历和八股,无场景题和手撕。面试官人很好,交流过程中也很耐心,无论结果如何都是一次宝贵的面试经验。

发表评论

后才能评论