';意外标记d';尝试将对象添加到Javascript对象数组时
我在热键服务中有一个空对象,如下所示:';意外标记d';尝试将对象添加到Javascript对象数组时,javascript,arrays,json,Javascript,Arrays,Json,我在热键服务中有一个空对象,如下所示: {hotKeys: [ ] } 我想向该数组中添加一批对象,以给出表单的最终结果: {hotKeys: [ "demoBtn1":{ keyCode: 49, keyShortcut: "1", label: "button" }, "demoBtn2":{
{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;
在尝试解析currentObj
的JSON时,我收到了错误。如果我不解析,我会得到一个无法分配给demoBtn1的只读属性“keyCode”的错误,我读取该错误是因为对象需要解析
如何按照预期填充对象
谢谢,阵列没有“键”(它们有道具,但这是不可能的)。我相信您希望使用{}
而不是[]
数组没有“键”(它们有道具,但这是不可能的)。我相信您希望使用{}
而不是[]
数组由一系列值组成:
[ foo, bar, baz ]
不是一系列键:值对(用于对象):
当然,数组中的值可以是对象:
[ { foo: {} }, { bar: {} }, { baz: {} } ]
数组由值列表组成:
[ foo, bar, baz ]
不是一系列键:值对(用于对象):
当然,数组中的值可以是对象:
[ { foo: {} }, { bar: {} }, { baz: {} } ]