如何将数据推送到对象中的数组?

时间:2014-02-05 20:15:21

标签: javascript

我不确定如何将数据推送到“decData”中的“data”属性。

        var decData = {
            labels: [],
            datasets: [

                {
                    fillColor: "rgba(151,187,205,0.5)",
                    strokeColor: "rgba(151,187,205,1)",
                    data: []
                }
            ]
        }

以下是我正在使用的代码

        decData.datasets.data.push(dayProfit);

有谁能告诉我我做错了什么?错误是

  

未捕获的TypeError:无法调用未定义的方法'push'

3 个答案:

答案 0 :(得分:1)

您的datasets对象是一个数组,因此您需要在数组中寻址一个元素:

decData.datasets[0].data.push(dayProfit);

答案 1 :(得分:0)

我的代码,datasets是一个数组。试试这个:

decData.datasets[0].data.push("stuff");

祝你好运!

答案 2 :(得分:0)

您始终可以向对象添加推送方法:

var decData = {
        ...
        push: function (value){
            this.datasets[0].data.push(value);
        }
    }

现在您可以使用此方法:

decData.push(dayProfit);

但是你必须问自己这个问题,第一个数据集是你想要推送数据的唯一地方吗?因为这就是代码的作用。