初看原型prototype

首先来看下prototype这个对象存在的位置:

  js的所有function类型的的对象都有一个prototype属性,这个prototype属性本身又是一个object类型的对象。

  事实上构造函数的prototype上定义的所有属性和方法,都是可以通过其构造的对象直接访问调用的。也可以这么说,prototype提供了一群同类对象共享属性和方法的机制 。

    function Person(name){//基类构造函数
this.name=name;
};
Person.prototype.sayHello=function (){
alert('hello,i am '+this.name);
};
function Employee(name,salary){//子类构造函数
Person.call(this,name);//调用基类构造函数
this.salary=salary;
}
Employee.prototype=new Person();//建一个基类的实例对象作为子类原型的原型(原型继承
Employee.prototype.getSalary=function (){
alert('I am '+this.name+' and my salary is '+this.salary);
};
var boss=new Person('总裁');
var coder=new Employee('程序员','3000');
boss.sayHello();
coder.sayHello();
coder.getSalary();

关于原型链:
  



原文地址:https://www.cnblogs.com/cwWeb/p/2334517.html