给定一个格式的字符串
"(1,(2,3,4),(5,6,(7,8,9,a,(b,c,d))))"
将其转换为 JavaScript 数组的最简单方法是什么?
[1, [2, 3, 4], [5, 6, [7, 8, 9, 'a', ['b', 'c', 'd']]]]
同时使用整数和未处理的字符串会阻止我使用内置解析,而多维性会阻止我使用简单的分割或类似的方法。
最佳答案
一种选择是使用正则表达式将括号变成方括号,用引号将字符串括起来,然后 JSON.parse
它:
const input = "(1,(2,3,4),(5,6,(7,8,9,a,(b,c,d))))";
const json = input
.replace(/\(/g, '[')
.replace(/\)/g, ']')
.replace(/[a-z]+/g, '"$&"');
console.log(JSON.parse(json));
关于javascript - 如何将表示多维数组的字符串解析为数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54165381/