类 - wxaxiaoyao/notebook GitHub Wiki

var Class = function (name) {
    var privateVar = "私有变量";

    this.name = name || "class";

    this.memberVar = "成员变量";
    this.memberFunc = function () {
        console.log("成员函数");
    }

    // 设置私有变量
    this.setPrivateValue = function (value) {
        privateVar = value;
    }
    // 读取私有变量
    this.printPrivateVar = function () {
        console.log(privateVar);
    }

    // 设置类变量
    this.setClassVar = function (value) {
        Class.prototype.classVar = value;
    }
};

Class.prototype.classVar = "类变量";
Class.prototype.print = function () {  // 类函数
    console.log(this.memberVar, this);
};

var obj1 = new Class("obj1");
var obj2 = new Class("obj2");

// 测试类变量
obj1.setClassVar("obj1");
console.log(obj1.classVar);  // obj1
console.log(obj2.classVar);  // obj1