我正在尝试将格式化的字符串转换为JavaScript多维数组。

我已经尝试过split()push()函数,但似乎都不起作用。格式应该已经正确,但我似乎无法弄清楚如何将字符串变成数组。

这是字符串:

[[24297, 'CWCS Sump 002', -121.50842, 38.54798, '2', 'SEWER SUMP'],[8035, 'CWCS Sump 002A (56)', -121.50842, 38.54798, '2A', 'SEWER SUMP'],[9334, 'CWCS Sump 001', -121.5110297, 38.5703431, '1', 'SEWER SUMP']]


我只想要一个来自该字符串的JavaScript数组,其大小为3x6(如果我算对的话)。行数会有所不同。

最佳答案

这是JSON.parse的很好的候选人;但是,单引号必须先转换为双引号才能起作用。请小心转义的引号,您可以尝试:



const raw = `[[24297, 'CWCS Sump 002', -121.50842, 38.54798, '2', 'SEWER SUMP'],[8035, 'CWCS Sump 002A (56)', -121.50842, 38.54798, '2A', 'SEWER SUMP'],[9334, 'CWCS Sump 001', -121.5110297, 38.5703431, '1', 'SEWER SUMP']]`;

const res = JSON.parse(raw.replace(/(?<!\\)'/g, `"`));
console.log(res);

10-08 16:23