返回的对象是未定义的

时间:2017-02-21 23:48:54

标签: javascript json oop

我有一个对象列表,我正在尝试动态创建其他子对象。该任务有效,但我得到父母的未定义结果。它应该将我的内容放入创建子对象的数据中。我想我在这个过程中缺少一个步骤,这与将String转换为对象有关。

var steps_array = 
{
    Step_1:
    {
        Data : ""

    },
    Step_2:
    {
        Data : ""
    },
    Step_3:
    {
        Data : ""
    },
    Step_4:
    {
        Data : ""
    }
}

加载动态内容的Javascript

steps_array.Step_3[steps_array.Data] = {loc:{location : 4}};

2 个答案:

答案 0 :(得分:2)

首先,你的对象不是一个数组 - 因此你最好使用点语法。考虑到这一点,你想要做的可能是:

steps_array.Step_3.Data = { loc: { location: 4 } };

答案 1 :(得分:0)

您的主要问题是您正在尝试访问不存在的属性。

您的对象有许多名为Step_#的键,但在此代码中:steps_array.Step_3[steps_array.Data] = {loc:{location : 4}};您试图访问一个不存在的.Data属性。因此,您尝试访问undefined属性的值。