背景:
在现实生活中,笔者经常面试很多很多前来应聘的前端工程师们,但是能把JS的继承讲明白的,却是寥寥无几,能把new操作符讲明白的就更少了。所以今天笔者就带小伙伴们,深度的多姿势的去了解继承的使用。
其实在网上,小伙伴们也可以搜索到很多关于讲解构造函数继承的博文,讲的也特别详细透彻。但是笔者还是依葫芦画瓢再写一次。
目的:1.再次加深小伙伴们对JS继承的使用和理解
2.在使用继承的方法中,有很多额外的拓展的JS概念比如new的作用,instanceof的使用等等是很多基础不扎实的小伙伴们所欠缺的知识啊!!!
先预告一下,在构造函数的继承实例DEMO中,会有很多new操作符和instanceof的使用,所以笔者先简单介绍一下这两个概念!
new操作符
在本博文的很多实例中,很多都是基于new出来的函数方法的实例,所以小伙伴们首先需要清楚的就是new操作符的作用:
function fn() {
this.name = 'Daivs';
this.age= 28;
// ...绑定其他需要绑定的属性
}
var Fn = new fn()
console.log(FN) ---> FN{name: 'Davis', age: 28}
/*
* new的作用
*
* 1. 调用fn这个函数方法
* 2. 自动创建一个object对象
* 3. 把创建出来的对象与this进行绑定
* 4. 如果构造函数没有返回值,隐式返回this对象
* */
new操作符的作用:既然需要new一个fn的函数,那么首先就是先调用这个方法; 然后自行创建出一个Object对象; 将Object对象与函数方法中的this进行绑定,将里面的值全部合并到这个Object对象中,并取名这个函数方法名;
这样小伙伴们对这个new操作符了解了吗?其实笔者在