京东前端面经(京东金融秋招)
1. 项目介绍
2. 对React的理解
==redux有用过吗==
==react路由是怎么实现的?==
跨级的数据传递(eventBus什么原理?eventBus的发布者订阅者分别是做什么的)
4. Vue
常用指令
==如何实现自定义指令==
directive
==Vuex的数据流向==
vue-router里面的路由守卫有哪些?
==路由如何传递参数?==
5. 原型链和继承
- 原型链怎么实现继承的?
Child.prototype = new Parent();
- ES6继承?为什么用super?不执行super有什么问题?
super
关键字,它在这里表示父类的构造函数,用来新建父类的this
对象。子类必须在
constructor
方法中调用super
方法,否则新建实例时会报错。这是因为子类自己的this
对象,必须先通过父类的构造函数完成塑造,得到与父类同样的实例属性和方法,然后再对其进行加工,加上子类自己的实例属性和方法。如果不调用super
方法,子类就得不到this
对象。
定义在Class里的方法定义在类上面还是原型上面?
==原型上==
静态方法可以被继承吗?
==可以==,不可以被实例使用
ES6里面的继承关系是怎么样的?
Class Child extends Parent; Child.prototype.__proto = Parent.prototype; // 方法继承,指向父类的原型 Child.__proto__ = Parent; //构造函数的继承,指向父类本身
6. Promise
- Promise.then() 方法如何实现
维护成功和失败的执行队列,每次resolve和reject函数中出队列,并且执行。
https://www.jianshu.com/p/43de678e918a