一、原型对象
每一个构造函数都有一个原型对象属性,指向另一个对对象,这个对象就叫原型对象
关系:
- 构造函数 (prototype连接) 原型对象
- 原型对象(constructor连接)构造函数
- 构造函数(new)实例对象
- 实例对象(_ proto _ 连接)原型对象
二、属性搜索方法
function Person(name,age){
this.name = name;
this.age=age;
}
Person.prototype.sayName=function(){
console.log('name')
}
//创建实例对象
const p1 = new Person();
p1.sayName();
如上代码,构造函数中没有sayName()方法,则实例化对象会搜索构造函数的原型对象中同名的方法
三、原生对象的原型对象
Array.prototype.方法名=function(){
}
可以构造原生对象的方法,比如:倒序
四、原型对象方法的简写
Pserson.prototype = {
constructor : Person, =>手动将constructor 指向构造函数,不需要去定义函数方法
name:"张三"
}
五、改变原型指向
Student.prototype = new Person();
将构造函数Student的原型对象指向Person,这样就可以使用Person的方法和属性
网友评论