11.21卓望数码一面
大约50mins,一个看起来好像接近40的面试官,早上面完,下午hr就说通过了约二面。
- 自我介绍
- 对vue更熟还是react更熟。说一下你有什么vue项目经历。你在做vue项目的过程中有做到什么性能优化吗。问我刚刚提到的利用到了浏览器的请求并发处理来解决性能优化问题,具体措施是什么(简单扯了一下通过升级http协议实现,,)
- 在项目中还实现了哪些性能优化。
- 问为什么带 hash 值的文件就设置为协商缓存,而不带 hash 值的文件就设置为强制缓存(这个当时忘了,说反了,应该是带 hash 值文件设置为强制缓存,不带 hash 值的文件设置协商缓存)。
- 说一下强制缓存和协商缓存的区别,它们的具体实现分别是怎么做的。为什么有了 last-modifed 还要再设置一个 etag。
- vue中 computed 和 watch 的区别是什么。computed 的值什么时候会改变。computed 的实现原理是什么。
- vue的响应式原理。问我刚才提到的vue响应式是基于发布-订阅者模式,里面的 dep 和 watcher 分别是指什么。
- 问我是如何使用 vue-router的。vue-router中有什么路由钩子。vue-router有什么模式。
- 在使用vue-router的过程中,有无遇到 url 参数发生了变化,但是页面没有发生更新的情况,它是什么原因导致的。(不会)
- 了解过哪些网络攻击。具体说一下 xss 攻击和 csrf 攻击。csrf 攻击有什么预防措施。
- 说说对 webpack 有的理解。如何用 webpack 做性能优化。
- 你对 vite 有什么理解,它和 webpack 有哪些横向对比。你说了很多 vite 基于 es module 的实现的很多优点,那它有没有缺点呢。(不会)
- 问我提到在实习过程中涉及很多网页 css 的修改,我具体是怎么做的,我如何去修改一个组件库内部的格式。
- 问我在vue中,由于大多情况下会设置 style scoped,所以如何去修改一个组件库中的内部格式。(这个还真不会,平时我都是看有无对外暴露 slot 来重写,没有就算了;或者直接通过内联的方式来改)