首页 > 代码库 > Javascript中的prototype

Javascript中的prototype

Prototype理解

 prototype(原型)

 

在JavaScript中,prototype对象是实现面向对象的一个重要机制。

每个函数就是一个对象(Function),函数对象都有一个子对象prototype对象,类是以函数的形式来定义的

prototype表示该函数的原型,也表示一个类的成员的集合。

在通过new创建一个类的实例对象的时候,prototype对象的成员都成为实例化对象的成员。

1、该对象被类所引用,只有函数对象才可引用;

2、在new实例化后,其成员被实例化,实例对象方可调用。

 同时,函数是一个对象,函数对象若直接声明成员,不用被实例化即可调用。

定义成员: 

 

<script language="javascript" type="text/javascript"> //定义一个只有一个属性prop的类 function class1(){  this.prop=1; } //使用函数的prototype属性给类定义新成员 class1.prototype.showprop=function(){  alert(this.prop); } 

//或:使用这种方式(qiushi注)
class1.prototype = {
  showprop:function(){
  alert(this.prop)
}
}
//创建class1的一个实例 var obj1=new class1(); //调用通过prototype原型对象定义的showprop方法obj1.showprop(); </script>

 

JavaScript是基于对象的,任何元素都可以看成对象。然而,类型和对象是不同的。

本文中,我们除了讨论类型和对象的一些特点之外,更重要的是研究如何写出好的并且利于重用的类型。

毕竟,JavaScript这种流行的脚本语言如果能够进行良好的封装,并形成一个庞大的类型库,对于重用是非常有意义的。

Javascript中的prototype