使用Javascript / jQuery在循环中构建嵌套对象

时间:2012-07-05 13:24:32

标签: javascript arrays object loops

我正在尝试使用JavaScript在for循环中创建以下嵌套对象,然后将其推送到现有数组:

            _spec = {
                _key: {
                    type: _clHndl.getFieldType(_f),
                    editable: true,
                    validation: {
                        required: _clHndl.isRequired(_f),
                        min: 10
                    }
                }
            };

            _arr.push(_spec);

_key字段是动态的(每次迭代都会更改),我希望嵌套项_key的标识符是_key在迭代中包含的实际值。现在,当我使用JSON.stringify()来检查它时,它只会使每个'_key'。

任何帮助将不胜感激。谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

你的密钥并不是真正嵌套的(它位于外部对象的顶层),尽管它确实不会有所不同。

要创建动态密钥,请使用成员运算符的方括号版本。

spec = {}; 

spec[my_dynamic_key] = {
    type: _clHndl.getFieldType(_f),
    editable: true,
    validation: {
        required: _clHndl.isRequired(_f),
        min: 10
    }
}