Prototype.js作为javascript的成功的开源框架,封装了很多好用的功能,虽然官方没提供什么文档,不过在google上一搜,好多相关的文档,不过在学习使用的过程中还是碰到了一些问题,希望熟悉的朋友能多加指点,对于prototype.js学习我关注这么几点,同时针对每点也讲讲学习的结果和碰到的问题,^_^ 
   1、类的创建 
     prototype.js已经封装好了,这个很简单。 
var Person=Class.create(); 
 这样就创建了一个Person类,这个Person类必须提供initialize方法的实现: 
Person.prototype={ 
                initialize:function(){ 
                } 
     }; 
   对比java,Class.create相当于Class.forName(),initialize相当于构造器,和java的构造器一样,可以自定义为带参数性质的。 
     可以看到在使用这样的方式定义class后,它和javascript原来的通过function方式来定义一个类就有明确的区分了,在这种情况下我们就可以用Class.create来定义类,用function来直接定义函数。 
     类通常还涉及静态成员(static性质的)和实例成员(需要实例化才可调用)的定义。 
     在javascript中这点也非常容易: 
     静态成员:   
var Person={ 
               name:'person', 
               getName:function(){return 'person'} 
     }; 
实例成员:  
Person.prototype={ 
              childname:'child', 
              eat:function() 
     } 
上面的Person.getName是可以直接这么调用的,但eat方法则需通过var person=new Person();person.eat();的方式来调用。 
2、类的继承 
     类的继承其实javascript本身就支持的,不过prototype提供了一种另外的方法。 
     按照javascript的支持的实现: 
var Student=Class.create(); 
     Student.prototype=new Person(); 
这样就实现了Student继承至Person。 
     在使用prototype的情况下可以这么实现: 
var Student=Class.create(); 
     Object.extend(Student.prototype,Person.prototype); 
子类要增加方法时可使用               
新闻热点
疑难解答