一.JavaScript中类的封装
? ? ? Javascript不是一种面向对向的语言, 没有提供对类的支持, 因此我们不能像在传统的语言里那样用class来定义类, 但我们可以利用js的闭包封装机制来实现js类, 下面我们以封装一个简单的Shape类来作一个说明.
? ? ?定义?ShapeBase“类”
? ? ?1.法则一[this式]
? ? ? ?function ShapeBase(){?
? ? ? ? ? ? this.show = function(){?
? ? ? ? ? ? ? ? ?alert("ShapeBase show");?
? ? ? ? ? ? };?
? ? ? ? ? ? this.init = function(){?
? ? ? ? ? ? ? ? ?alert("ShapeBase init");?
? ? ? ? ? ? };?
? ? ? ?}?
? ? ? ?注:这里用到了this来声明,而不是var,后者是用来定义私有方法的。
? ? ? ?
? ? ? ?2.法则二[prototype式]
? ? ? ?ShapeBase.prototype.show=function(){?
? ? ? ? ? ? ? alert("ShapeBase show");?
? ? ? ?}?
? ? ? ?ShapeBase.prototype.init=function(){?
? ? ? ? ? ? ? alert("ShapeBase init");?
? ? ? ?}
? ? ? ? 或者
? ? ? ? ShapeBase.prototype={
? ? ? ? ? ? ? ? ? show:function(){