我正在尝试确定将 JavaScript 中的字符串拆分为具有任意维度的多维数组的最快方法。有没有比循环遍历相同深度的字符串和匹配括号更好的方法?
示例字符串:
[1,2,3,[1,2,3,[1,2,3]],4,5,[1,2],[[1,2],[1,2]],[1],[1]]
我正在尝试确定将 JavaScript 中的字符串拆分为具有任意维度的多维数组的最快方法。有没有比循环遍历相同深度的字符串和匹配括号更好的方法?
示例字符串:
[1,2,3,[1,2,3,[1,2,3]],4,5,[1,2],[[1,2],[1,2]],[1],[1]]
如果您不需要计算较旧的浏览器,您可以使用 JSON.parse:
var a = '[1,2,3,[1,2,3,[1,2,3]],4,5,[1,2],[[1,2],[1,2]],[1],[1]]';
var b = JSON.parse(a);
对于较旧的浏览器,我可以想到一种快速而肮脏的方法,有些人将其用作解析 JSON 的最后手段。
var a = '[1,2,3,[1,2,3,[1,2,3]],4,5,[1,2],[[1,2],[1,2]],[1],[1]]';
var b = (new Function('return ' + a + ';'))();