繁体   English   中英

是否可以将对象的属性值设置为javascript中的对象?

[英]Is it possible to set an object's property value as an object within javascript?

所以这就是我想要做的:

注意:这些对象只是我要执行的操作的一个示例,它们不是我正在使用的实际对象。

var object = {
    header: "Header",
    selectorObject: selector = new Selector(), //Property has Object value
    footer: "Footer"
}

function Selector() {
    var index = 0;
    this.rotateLeft = function() {
        index++;
        return index;
    }

    this.rotateRight = function() {
        index--;
        return index;
    }
}

我想知道是否可以赋予已定义对象的对象属性值吗?

如果有可能,将对象分配给属性后,如何访问该对象?

我知道这是可能的另一种形式:

var object = {
    header: "Header",
    selectorObject: {
     //Properties and functions
    },

    footer: "Footer"
}

但是,我的选择器对象将被多次使用,因此为我在其中使用的每个对象复制代码是可耻的。

使用上面的代码,您可以将选择器对象交给需要的任何新对象的新实例,该实例将是相同的:

object.selectorObject.rotateLeft()
> 1
object.selectorObject.rotateLeft()
> 2
var obj2 = { selectorObject: object.selectorObject };
obj2.selectorObject.rotateLeft()
> 3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM