在JavaString中将作为字符串存储的数组转换为列表对象



我有以下列表:

nested_list = [
["[63]"],
["[61]"],
["[7]"],
["[63]"],
["[80, 18]"],
["[80, 43, 18, 20]"]
]

我知道这很乱,但这是我现在必须处理的数据我需要它像这样:

[63, 61, 7, 63, 80, 18, 80, 43, 18, 20]

就是把它转换成一个数字列表。使用尽可能少的循环是否可行?

我使用了flat()nested_list .flat(2),最终得到以下结果:

[ '[63]', '[61]', '[7]', '[63]', '[80, 18]', '[80, 43, 18, 20]' ]

也尝试减少+ concat以下,但因为它是一个字符串,它不工作,我不知道从这里去哪里。

.flatMap()+JSON.parse()可以很容易地做到这一点

const nested_list = [
["[63]"],
["[61]"],
["[7]"],
["[63]"],
["[80, 18]"],
["[80, 43, 18, 20]"]
];
const result = nested_list.flatMap(JSON.parse);
console.log(result)

最新更新