使用原型OOP在类中的类

时间:2011-03-15 19:59:35

标签: javascript prototype

我有以下代码:

function A(){
    this.init.apply( this, arguments );
}

A.prototype = {

    name: "",

    init: function( nameOfSomething ){

        this.name = nameOfSomething;

    }

};

通过这种方式,我可以使用:

var something = new A();

我想在“A”类中添加另一个类。像B。

我想用:

something.B = new B();

something.B.name = "testing";

B有我想要的任何属性和方法!

有人?

1 个答案:

答案 0 :(得分:1)

如果你想“扩展”一个“类”A的对象(并且javascript没有类,如果你的行为就会被烧掉),请[未经测试]:

function B () {}
B.prototype = new A();
B.prototype.init("bla");

var b = new B();
b.name; /* should return "bla" */

但我相当确定这实际上并不是你想要/期望的。请参阅http://joost.zeekat.nl/constructors-considered-mildly-confusing.html我试图解释一般机制及其陷阱。