JavaScrip基础讲座 - 神奇的ProtoType

1. 什么是 prototype 

prototype 对于 JavaScript 的 意义重大,prototype 不仅仅是一种管理对象继承的机制,更是一种出色的设计思想 

在现实生活中,我们常常说,某个东西是以另一个东西为原型创作的。这两个东西可以是同一个类型,

也可以是不同类型。习语“照猫画虎”,这里的猫就是原型,而虎就是类型,用 JavaScript prototype 来 表示就是“虎.prototype =某只猫”或者“虎.prototype= new ()” 

eg:

function ClassA()
{
...... 
}
ClassA.prototype = new Object(); 

function ClassB()
{
......
}
ClassB.prototype = new ClassA(); //ClassB 以 ClassA 的对象为原型 

function ClassC()
{
...... 
}
ClassC.prototype = new ClassB(); //ClassC 以 ClassB 的对象为原型

var obj = new ClassC();
alert(obj instanceof ClassC);
alert(obj instanceof ClassB);
alert(obj instanceof ClassA);
alert(obj instanceof Object);

运行结果:

true

true

true

true

 

 

 

posted @ 2013-10-02 11:11  Master HaKu  阅读(241)  评论(0编辑  收藏  举报