JavaScript 演练(9). 内部成员、对象成员

来源:岁月联盟 编辑:exp 时间:2012-03-19

MyClass = function () {
    var A = 1;           //内部成员
    B = 2;               //内部成员
    this.C = 3;          //对象成员
}
MyClass.prototype.D = 4; //对象成员(通过原型扩展)

obj = new MyClass();
alert(obj.A); //undefined
alert(obj.B); //undefined
alert(obj.C); //3
alert(obj.D); //4

alert(obj.hasOwnProperty('C')); //true
alert(obj.hasOwnProperty('D')); //false


/* 一个无聊的练习 */
MyClass = function () {
    this.A = 1;
}

MyClass.prototype.X = function () {
    this.B = 2;
}

MyClass.prototype.Y = function () {
    this.Z = function () {
        this.C = 3;
    }
}

obj = new MyClass();
alert(obj.A);        //1

obj1 = new obj.X();
alert(obj1.B);       //2

obj2 = new (new obj.Y()).Z();
alert(obj2.C);       //3


摘自  万一的 Delphi 博客