蘑菇街前端一面
全程大概一小时,主要问基础 + 算法 + 项目。
问题环节
介绍一下 JS 的模块化规范有哪些
CommonJS 和 ES Module 有什么区别?
Babel 的作用和原理
为什么会出现跨域?
如何解决跨域?除了服务端 CORS 解决,还有其它方法吗?
说一下从接收到 HTML 文件开始页面渲染的过程
解析 HTML 的时候遇到 script 标签会怎么处理?声明 async 和 defer 有什么区别?
解析 HTML 的时候遇到 link 标签和内联样式,分别会怎么处理?
解析样式和执行脚本可以同时进行吗?为什么?
HTTP 和 HTTPS 的区别?
怎么防御 XSS 攻击和 CSRF 攻击
Vue 数据响应式的原理
数据变化的时候怎么知道要更新哪些 DOM 元素?
写题:求多个数组区间的交集(写出来就行,没让优化)
项目中做的最好的一个地方(一开始答非所问,他问我为啥举这个例子,于是我又换了一个)
反问环节
- 多少轮技术面?他说两轮,如果顺利的话,第二轮是他的 leader 来面
- 学习上的建议?他说多看官方文档和源码。
总体体验真的很不错:流程安排一开始会说得很清楚,问答的时候也能明显看到对方的反馈。在介绍项目的时候,面试官会很认真地听,甚至和你一起分析,不是简单的敷衍。因为前面流程安排的缘故,面试延迟了30分钟,这个也会事先告知你,不会像其他面试官那样,迟到了几十分钟也不会通知你。。。
#面经##蘑菇街##面试题目#