javascript中的每个对象都有prototype属性,Javascript中对象的prototype属性的解释是:返回对象类型原型的引用。以A.prototype = new B();为例,

理解prototype不应把它和继承混淆,A的prototype为B的一个实例,可以理解A将B中的方法和属性全部克隆了一遍,A可以使用B的方法和属性,这里强调的是克隆而不是继承,可以出现这种情况:A的prototype是B的实例,同时B的prototype也是A的实例。

 1 function baseClass()
 2 {
 3   this.showMsg = function()
 4   {
 5      alert("baseClass::showMsg");   
 6   }
 7 }
 8 
 9 function extendClass()
10 {
11 }
12 extendClass.prototype = new baseClass();
13 var instance = new extendClass();
14 instance.showMsg(); // 显示baseClass::showMsg
View Code

相关文章: