蔚来前端一二三连环面面经(已收到意向书)
一面
上午11点开始,持续时间一小时左右
- 介绍一下自己的项目,具体做了哪些工作
- (因为之前说了项目中用到了高德地图API)高德地图的覆盖物是怎么实现的(
new AMap.Marker()
),它的样式怎么设置的吗? - (因为之前说了项目中用到了Echarts)在使用Echarts的过程中发现了什么问题?怎么解决的?
- 说下防抖和节流,什么情况下会用到?
- CSS中id选择器、class选择器、元素选择器、行内样式它们的优先级?用哪种选择器比较多?你觉得它有什么优点?
display: none
和visibility: hidden
的区别position
都有哪些属性?absolute
和relative
的区别?- 在一个div中包含一个未知尺寸的子div,如何让它在父div中水平垂直居中?
- JavaScript中有哪些基本数据类型?
- 说一下原型和原型链
apply
,call
和bind
三个方法的作用和区别- 如何判断一个变量的数据类型?(说了
typeof
和instanceof
)还有其它方法吗? - 看你的项目中使用过element-ui,说下它里面的表单校验是怎么使用的?
- 在你使用element-ui的过程中有没有发现它的什么问题或是不足的地方?(没想出来,面试官说了一个)
- Vue中组件间传值的方法
- Vuex是永久保存的吗?(不是)想要永久保存怎么办?(回答用localStorage)但是localStorage不是双向数据绑定的怎么解决?(我说将Vuex和localStorage结合使用,同步它们的数据)
v-show
和v-if
的区别- axios的拦截器有哪些?(请求拦截器和响应拦截器)现在有两个请求拦截器A, B,两个响应拦截器A, B,它们的执行顺序?(请求拦截器B,请求拦截器A,响应拦截器A,响应拦截器B)为什么是这样的执行顺序?
- 开放题(把你的想法都可以说出来):用JavaScript实现一个雪花飘落的动画。(自己没什么想法,面试官一步一步引导:是不是要创建一个雪花的类?它里面包含哪些属性和方法?感觉答的不是很好)
- 反问:技术栈(Vue和React都有)
二面
一面结束后立即收到二面通知,12点半开始,持续时间40分钟左右
- 在项目的过程中遇到过哪些难点?怎么解决的?
typeof
和instanceof
的区别?instanceof
是怎样实现的?- 说一下原型和原型链
- Flex包含哪些属性?
justify-content
属性包含哪些? - 说一下深拷贝和浅拷贝,如何实现深拷贝?
- 你常用的ES6语法有哪些?
- 说一下
let
和const
的相同点与不同点 - 什么是闭包?
- 有看过
Promise
的源码吗?说下它是怎样实现的 - 说一下
Promise.all()
和Promise.race()
- 浏览器输入一个url按下回车后发生了什么?
- 说一下强缓存和协商缓存,强缓存和协商缓存有哪些标识?
- 说一下三次握手,为什么要三次不能两次?
- 介绍下回流和重绘
- 算法题:爬楼梯
- 算法题:全排列 (没做出来)
- 看过Vue的源码吗?说一下你看的一部分内容(说了双向绑定)
- 了解数组的哪些方法?说下
forEach()
和map()
的区别 - 觉得自己还有哪些被我忽略的亮点?(我说没有 TT)
- 反问
三面
二面结束后立即三面,等待了30分钟左右,14点20分开始的,持续时间40分钟左右
- 编程题:实现一个EventHub类,包含listen和emit方法;listen方法接收两个参数event和callback,event为监听的事件名,callback为绑定的事件回调;emit方法接收多个参数,第一个参数event为触发的事件名,其余参数为传给callback的参数。(附上我当时写出来的代码)
function EventHub() { this.events = {} } EventHub.prototype.listen = function (event, callback) { if (this.events.hasOwnProperty(event)) { this.events[event].push(callback) } else { this.events[event] = [callback] } } EventHub.prototype.emit = function (event, ...args) { if (this.events.hasOwnProperty(event)) { this.events[event].forEach(element => { element.call(this, ...args) }) } }
- 上面题中用到了call方法,那么call和apply的区别是什么?
- HTTP状态码除了200和404之外还知道哪些?(说了301,302,304,401,403)
- 401和403的区别和应用场景?
- 了解伪类和伪元素吗?
- Vue的双向绑定
- 说一下computed和watch,他们有什么区别?
- 反问
面到最后嘴都瓢了,三轮下来整个人已经不好了
8月23日,被晾了一个半月终于意向书
#蔚来面试##面经##校招##蔚来汽车##前端工程师#