原型prototype

定义:js里面的原型用来实现继承关系,原型是function对象的一个属性,他定义了构造函数制造出来的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。构造函数创建开始就有prototype.原型也是对象
作用:1、提取公有属性
2、查看原型:proto
3、查看对象的构造函数constructor,儿子不知道父亲是谁就用该方法。可以手动更改
Person.prototype={
constrcutor: Newperson;
}
function Person(){}
function Newperson(){}
var person=new Person();
person.constructor()会变成NewPerson:认贼作父

1、修改、增加原型

不可以通过后代(对象)修改原型的属性(儿子不可以修改父亲的妻子)
Person.prototype.LastName=“wang”;
function Person(){

}
var person=new Person();
错误修改原型:person.LastName="";//这是给自己添加属性
正确修改:Person.prototype.LastName="";
不可以通过后代对象增加同修改原理一样
2、proto
proto存的是每个对象的原型,对象查找属性的时候自身没有的话就会找proto上面;
函数的原型不一定是prototype,可以修改的,就是通过proto修改如下例子
function Person(){
}
Person默认的原型是Person.prototype,
但是如果修改如下:
var obj={}
proto如_proto
=obj;则Person的原型就是obj了

你可能感兴趣的:(原型prototype)