我有一个看起来像这样的字符串:
[ [a,b,c],[a,b,c],[a,b,c] ]
我想将其更改为数组数组。 你知道我该怎么办?
答案 0 :(得分:0)
如果您的字符串是有效的JSON数组,则可以使用JSON.parse
:
var anArray = JSON.parse(arrayString)
答案 1 :(得分:0)
如果你的字符串实际上是这样的(有效的JSON):
var string = '[["a", "b", "c"], ["a", "b", "c"], ["a", "b", "c"]]';
然后你可以做
console.log(JSON.parse(string));
[[“a”,“b”,“c”],[“a”,“b”,“c”],[“a”,“b”,“c”]]
使用
var string = "[[a,b,c],[a,b,c],[a,b,c]]";
没有太多可以做的,因为它不是有效的JSON,并且a,b,c
未定义。你将不得不按摩你的“字符串”,使它至少是有效的JSON。
答案 2 :(得分:0)
好吧,您可以尝试将其拆分为" [" -chars而忽略"]" -characters。
var str = "[[a,b,c],[a,b,c],[a,b,c]]"
var splitted = str.split("[");
var outerArray = [];
for(var i in splitted){
var token = splitted[i].replace(/]/g, "");
if(token.length > 0){
var innerArray = token.split(",");
if (innerArray.length > 0)
outerArray.push(innerArray);
}
}
这绝对不优雅,并且可能由于未处理的空格或空字符串而容易出错。但这可能是你可以去的一种方式......