我有一个包含多个数组的字符串,用逗号分隔。我想做的是将每个json对象(不是数组!)解析为javascript中的一个数组。最好的方法是什么?
[
{
"type":"radio-group",
"label":"Radio-Button-Gruppe",
"name":"radio-group-1556028993486",
"className":"iCheck",
"values":[
{
"label":"aaaaaaa",
"value":"aaaaaaa"
},
{
"label":"bbbbbbbbb",
"value":"bbbbbbbbb"
},
{
"label":"cccccccccccc",
"value":"cccccccccccc"
}
]
}
],
[
...
],
[
{
"type":"header",
"label":"Überschrift"
}
]
想要这个:
array[0] = {
"type":"radio-group",
"label":"Radio-Button-Gruppe",
"name":"radio-group-1556028993486",
...
}
array[n] = {
"type":"header",
"label":"Überschrift"
}
解决方案
JSON.parse(`[${formData}]`).flat();
使用flat()
功能,我可以移除外部数组的括号并将json对象解析为数组。
答案 0 :(得分:0)
似乎只缺少环绕的方括号。您是否尝试过:
let str = '...', // your string
arr = JSON.parse(`[${str}]`).flat();