Javascript创建bidimentional对象数组

时间:2015-12-02 22:20:02

标签: javascript arrays object matrix

首先,这是我的代码:

var rettangolo = {
        rectX_top: 0,
        recX_bottom: 0,
        rectY_top: 0,
        rectY_top: 0,
        colpito: false,
        colore: 'hsl(' + 360 * Math.random() + ', 50%, 50%)',

        rettangolo: function() {
        this.setRectX_top(0);
        this.setRectX_bottom(0);
        this.setRectY_top(0);
        this.setRectY_top(0);
        this.setColpito(false);
        this.setColore('red');
        },

        setColpito: function(colpito) {
            this.colpito = colpito;
        },

        setColore: function(colore) {
            this.colore = colore;
        },

        setRectY_top: function(top) {
            rectY_top = top;
        },

        setRectX_top: function(top) {
            rectX_top = top;
        },

        setRectX_bottom: function(bottom) {
            rectX_bottom = bottom;
        },

        setRectY_bottom: function(bottom) {
            rectY_bottom = bottom;
        },

        <!--        GET METHODS     -->

        getColore: function() {
            return this.colore;
        },

        getRectY_top: function() {
            return this.rectY_top;
        },

        getColpito: function() {
            return this.colpito;
        },

        getRectX_top: function() {
            return this.rectX_top;
        },

        getRectX_bottom: function() {
            return this.rectX_bottom;
        },

        getRectY_bottom: function() {
            return this.rectY_bottom;
        },



    }

这是我的课,现在我需要创建这个类的多个实例。 可能吗?如果是的话,你是如何实现它的? (另外,这是正确的吗?请注意,这是我创建的第一堂课,因为他们从未在学校解释过)。 谢谢!

1 个答案:

答案 0 :(得分:1)

您需要制作构造函数或工厂函数。

阅读此https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects

Constructor function vs Factory functions

有许多方法可以实现这一点,这就是其中之一。显然你可以扩展它以适合你的情况。

var object = function(options) {

    var object = {
        id: options.id,
        property: 'value'
    };

    return object;
};

var a = object({id:1});
var b = object({id:2});

console.log(a); 
console.log(b); 

这说明你可以从同一个构造函数创建两个对象,因为两个对象在属性属性中具有相同的值,而另一个id依赖于传递的id选项。

此外行注释:

<!--        GET METHODS     -->

将抛出错误,在Javascript中使用///* */进行评论。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar