基本看过高程等书的人都可以对原型继承,原型链查找侃侃而谈,代码中也可以使用原型完成一些事情,但是,我们对于原型真的彻底搞明白了么?

原型由构造器确定

我们的原型是一个对象,构造器函数有一个属性指向这个对象,prototype;而我们每次new出来的实例也有一个属性指向这个对象,__proto__。为什么说原型是由构造器确定的,因为在new之后,这个实例的原型就已经确定了,实例的__proto__和构造器的prototype都会指向那个原型对象。

大学生就业培训,高中生培训,在职人员转行培训,企业团训

var Person=function(){};var p=new Person();
console.log(p.__proto__===Person.prototype);  // truePerson.prototype={
   say:function(){
        console.log("hello");
   }
}var t=new Person();
console.log(t.__proto__===Person.prototype);  // truet.say();   // helloconsole.log(p.__proto__===Person.prototype);  //  falsep.say();  // 报错

大学生就业培训,高中生培训,在职人员转行培训,企业团训

网友评论