Javascript在多维数组中添加数据

Javascript在多维数组中添加数据,javascript,multidimensional-array,add,Javascript,Multidimensional Array,Add,我试图理解如何向数组中添加值。它是多层面的: var eventcontent = { '2015-05-02' : [{'title':'somethingtitle1','content':'somethingcontent1','something':'something1'},{'title':'somethingtitle2','content':'somethingcontent2','something':'something2'}],

我试图理解如何向数组中添加值。它是多层面的:

var eventcontent = {
                '2015-05-02' : [{'title':'somethingtitle1','content':'somethingcontent1','something':'something1'},{'title':'somethingtitle2','content':'somethingcontent2','something':'something2'}],
                '2015-05-07' : [{'title':'somethingtitle7','content':'somethingcontent7','something':'something7'}],
        }
如何将以下数据添加到“2015-05-02”中

{'title':'somethingtitle3','content':'somethingtontent3','something':'something3'}


感谢您的帮助

事件内容是对象。首先,您必须访问存储在
2015-05-02
键下的阵列<代码>2015-05-02
不是有效的属性标识符,因此您无法通过

var array = eventcontent.2015-05-02 // SyntaxError
相反,您必须使用括号表示法

var array = eventcontent['2015-05-02'];
例如,您可以将数据保存到数组中

var data = {'title':'somethingtitle3','content':'somethingcontent3','something':'something3'};
var array = eventcontent['2015-05-02'];
array.push(data);
编辑: 也许您还应该检查数组是否确实存在,以便代码变成:

var data = {'title':'somethingtitle3','content':'somethingcontent3','something':'something3'};
var array = eventcontent['2015-05-02'];

if (array === undefined) // check if it is undefined and if so...
  array = eventcontent['2015-05-02'] = []; // make empty array and assign it to eventcontent under '2015-05-02' key
}

array.push(data);

eventcontent['2015-05-02'].推送({…})
感谢您的回答。我总是遇到一个错误:TypeError:无法读取未定义的属性“push”。这是我的声明:var eventcontent={}我也尝试了[]。抱歉,我假设您已使用数据初始化了
eventcontent
。在这种情况下,您必须检查数组是否确实存在,并在需要时创建它。它给我同样的错误信息。知道会是什么吗。我所拥有的是我上面的帖子