面向对象与原型2

1.基础的原型认识:咱们建立的每一个函数都有一个prototyoe属性,这个属性是一个对象,它的用途是包含能够由特定类型的全部实例共享的属性和方法。逻辑上能够这么理解:prototype经过调用构造函数而建立的那个对象的原型对象。另外要说的_proto_是指向原型属性constructor的。javascript

2.原型的好处:能够让全部对象实例共享它所包含的属性和方法,也就是说,没必要在构造函数中定义对象信息,可直接将这些信息添加到原型中。java

3.原型示例:函数

//原型
function Pro(){}   //先声明一个构造函数
//在原型里添加属性和方法
Pro.prototype.name='Lee';
Pro.prototype.age=100;
Pro.prototype.run=function(){
     return this.name+this.age;    
}
//打印结果
var pro1=new Pro();
alert(pro1.run());

 4.原型里须要注意一点:原型里的方法的引用地址是一致的,可是方法是不同的,即:this

pro1.run()!=pro2.run();//假若有pro2的状况下
pro1.run==pro2.run;

 5.为了更好的封装效果,原型的建立也能够这样写:prototype

function Pro(){}
Pro.prototype={      //使用字面量的方式建立
    name:'Lee',
    age:100, 
    run:function(){
         return this.name+this.age;
   }
}
相关文章
相关标签/搜索