第一,
首先,使用关键字function定义一个类
function Shape1(ax,ay) {//此时将function看成声明类的标志
    var x=0;
    var y=0;
    var  init=function () {//构造函数   对内部的变量赋值
        x=ax;
        y=ay;
    }
init();//构造函数的调用
     this.getX=function () {//this声明公有函数   var 声明私有   get方法
      return x;
    }
}
然后,对象的实例化+调用
var shape=new Shape1(1,2);//实例化 alert(shape.getX());//公有方法的调用
第二,
静态属性和静态方法
js中静态方法是作用在类身上的而非对象上
一,对于使用function声明的类
(1)首先,先定义一个类
function Person() {this.Name="小李"};
(2)然后,为类添加静态变量  静态方法
Person.age=0; Person.ShowName=function (obj) { console.log(obj.Name)//此时的Name是Person对象类下面全局变量,需要Person对象方可访问 };
(3)调用
 Person.ShowName(new Person());
总结:先有类,再添加有静态成员,
Person是一个类 可以实例化,下面有静态成员需要实例化.才能访问
二,没有function声明的类(对象)--简单类
(1),先有一个类
var a={};//一个类
(2)为类添加属性
a["name"]="1";//添加属性
(3)调用
alert(a.name);
JavaScript之使用JavaScript模仿oop编程
原文:http://www.cnblogs.com/bfwbfw/p/7636283.html