Javascript 在多维数组中添加数据

Javascript add data in multidimesional array

我正在尝试了解如何将值添加到我的数组中。它是多维的:

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':'somethingcontent3','something':'something3'}

感谢您的帮助

eventcontent 是对象。首先,您必须访问存储在 2015-05-02 键下的数组。 2015-05-02 是无效的 属性 标识符,因此您无法通过

访问它
var array = eventcontent.2015-05-02 // SyntaxError

相反,您必须使用括号表示法

var array = eventcontent['2015-05-02'];

然后你可以 push 你的数据到数组

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);