如何将对象添加到数组的父\顶级?

时间:2014-02-13 16:03:59

标签: javascript arrays

我正在尝试将对象添加到数组中,以便将它们列为所需的结构:

myobject1: Object:
    ItemInside: Object
myobject2: Object
    ItemInside: Object
myobject3: Object
    ItemInside: Object
myobject4: Object
    ItemInside: Object

但它们被添加为:

0: Object
    myobject1: Object
        ItemInside: Object
1: Object
    myobject2: Object
        ItemInside: Object
2: Object
    myobject3: Object
        ItemInside: Object
3: Object
    myobject4: Object
        ItemInside: Object

这是用于第二个数组的代码:

var myarr = [];
$.each(returnedData, function (index, value) {

    var field = {};
    field[value.Name] = {
         display: value.DisplayName,
         cssClass: value.FieldType,    
    };
    myarr.push(field);
});

我的数组包含我想要的所有内容,没有错误,只是在错误的结构中。

我目前的结构示例如下:

enter image description here

我基本上只是尝试将“myobjects”添加到父级,而是将它们添加到自己的父对象中。如何添加它们以使它们显示在所需的结构中?

1 个答案:

答案 0 :(得分:1)

听起来你想要的是顶级数组实际上是myobject1 ... myobject4的对象。在这种情况下,这应该工作:

var root = {};
$.each(returnedData, function (index, value) {
    root[value.Name] = {
         display: value.DisplayName,
         cssClass: value.FieldType,    
    };
});