我有一个字符串:
[[-3.9,-160.1,34.7],[-0.4,16.3,18.0],[236,236,231],'SMTH 123',35]
如何将其转换为多维数组?
答案 0 :(得分:1)
您可以使用JSON.parse()
将字符串转换为对象,假设它是有效的JSON开头。您的数据具有由单引号分隔的字符串,这些字符串不是有效的JSON。如果你用双引号替换它们那么它将起作用......
var s = "[[-3.9,-160.1,34.7],[-0.4,16.3,18.0],[236,236,231],'SMTH 123',35]";
var ar = JSON.parse(s.split("'").join("\""));
console.log(ar);

答案 1 :(得分:0)
做这样的事情怎么样:
function stringToObject(data) {
var converted = {};
try {
converted = JSON.parse(data);
} catch(err) {
console.log('Provided data is not valid', err);
}
return converted;
}
console.log(stringToObject('[[-3.9,-160.1,34.7],[-0.4,16.3,18.0],[236,236,231],"SMTH 123",35]'));
console.log(stringToObject('[[-3.9,-160.1,34.7],[-0.4,16.3,18.0],[236,236,231')); // invalid string
请注意,我已经在我的示例中更改了'into',如果这是一个问题,您可以查看在该问题的另一个答案中完成的转换。
答案 2 :(得分:0)
假设JQuery也没关系:
var arr = $.parseJSON('[[-3.9,-160.1,34.7],[-0.4,16.3,18.0],[236,236,231],'SMTH 123',35]')