'意想不到的令牌d'尝试将对象添加到Javascript对象数组时

时间:2015-10-15 16:26:43

标签: javascript arrays json

我在QMetaObject::invokeMethod(the_first_item, "ping");内有一个空对象,如下所示:

hotKeyService

我想在此数组中添加一堆对象,以提供表单的最终结果:

{hotKeys: [
    ]
}

目前我的代码是:

{hotKeys: [
       "demoBtn1":{
                   keyCode: 49,
                   keyShortcut: "1",
                   label: "button"
                  },
       "demoBtn2":{
                   keyCode: 50,
                   keyShortcut: "2",
                   label: "button"
                  },
    ]
}

在我尝试解析hotKeyService.hotKeys.push(attrs.id); var arrayRow = hotKeyService.hotKeys.length - 1; var currentObj = JSON.parse(hotKeyService.hotKeys[arrayRow]); currentObj.keyCode = attrs.keyCode; currentObj.keyShortcut = attrs.keyShortcut; currentObj.label = attrs.label; 的JSON时,我收到错误。如果我不解析我得到currentObj错误,我读到的是因为对象需要解析。

如何按预期填充对象?

由于

2 个答案:

答案 0 :(得分:2)

阵列没有“钥匙”(他们有道具,但这是不可能的)。我相信你想使用{}代替[]

答案 1 :(得分:2)

数组包含一系列值:

[ foo, bar, baz ]

不是一系列键:值对(对象):

{ a: foo, b: bar, c: baz }

数组中的值当然可以是对象:

[ { foo: {} }, { bar: {} }, { baz: {} } ]