我可以根据同一对象上的构造函数在对象属性中创建一个新对象吗?

时间:2015-04-13 07:48:36

标签: javascript

以下代码在JavaScript中有效吗?

var model = {
    var1: "",    
    var3: function() {
       this.someval1=0;      
    },
    var4: new var3(),    
}

我知道函数返回一个对象。我们可以像对象一样使用var4吗?上面的代码会给出错误"var3 is undefined"

2 个答案:

答案 0 :(得分:3)

不,不是。然而,以下是:

var model = {
    var1: "",    
    var3: function() {
       this.someval1=0;      
    },
}
model.var4 = new model.var3();

请注意,你最有可能做错了什么。您应该描述 what you're trying to do, in addition to how you're trying to solve it

答案 1 :(得分:0)

除了发布的其他人。你可以这样做:

var model = {
    var1: "",
    var3: (function () {
        return window.var3 = function () {
            this.someval1 = 0;
        }
    })(),
    var4: new var3()
}