Javascript 如何将数组字符串转换为数组?

Javascript 如何将数组字符串转换为数组?,javascript,jquery,Javascript,Jquery,有没有最好的方法将字符串转换为数组 我正在使用SpringMVC,并从javascript调用ajax,让字符串处于活动状态 var result = "[[a,b,c],[d,e,f]]" 我想在数组中转换这个字符串,如下所示 var resultArray = [[a,b,c],[d,e,f]] 当我找到长度时,我想得到2,你需要使用JSON.parse var resultArray = JSON.parse('[["a","b","c"],["d","e","f"]]'); 您可

有没有最好的方法将字符串转换为数组

我正在使用SpringMVC,并从javascript调用ajax,让字符串处于活动状态

var result = "[[a,b,c],[d,e,f]]"
我想在数组中转换这个字符串,如下所示

var resultArray = [[a,b,c],[d,e,f]] 

当我找到长度时,我想得到2,你需要使用JSON.parse

var resultArray = JSON.parse('[["a","b","c"],["d","e","f"]]');
您可以使用resultArray.length获取大小

检查这个


当然这个字符串“[[a,b,c],[d,e,f]”无法工作,因为它不是一个正确的JSON字符串,每个单词必须在双引号之间你可以使用JSON.parse([[a,b,c],[d,e,f]])或eval,但我建议使用JSON.parse

前面我返回了一个类似的列表

var resultArray = JSON.parse('[["a","b","c"],["d","e","f"]]');
List<List<String>> list = new ArrayList<List<String>>();

如果每次的结果都有一个“].[”,那么返回
outerJsonArray.toString()

是唯一的方法

然后,也只有到那时->这对你有用

代码:

HTML:


数组及其格式中的实际值是什么?这在中不是有效的二维数组表示形式java@gurvinder372为什么不呢?字符串应该用双引号括起来,请参阅以获取正确的格式。如果这是AJAX调用和返回JSON的结果,为什么不正确设置请求和响应的标题,以便它能够解析t为您?不要忘记旧浏览器的polyfill:alert(JSON.parse([[a,b,c],[d,e,f]])给我“未捕获的语法错误:意外的标记a(…)”@RadekPech,你想支持什么旧浏览器,IE6我想@Oxi a、b、c、d、e、f只是值的示例,当然它不起作用,OP用这些作为他尝试的示例do@Saba“[[a,b,c],[d,e,f]]”是一个活动的字符串(完全来自问题)。他没有说它的JSON字符串。这只是一些随机字符串。为什么不建议使用eval?如果a、b、c、d、e和f是实际标识符,eval将给出正确答案。而仅仅使用JSON.parse将失败,而不会引用字符或进行更复杂的连接。
<div class="a"></div>
<div class="b"></div>
var result = "[[a,b,c],[d,e,f]]"

var splitter = result.split('],[');
var arr = [];

$.each(splitter, function(i, e){
    var arrElement = e;
  while(arrElement.indexOf(']') > -1){
    arrElement = arrElement.replace(']', '');
  }
  while(arrElement.indexOf('[') > -1){
    arrElement = arrElement.replace('[', '');
  }

  arr.push(arrElement);

});

$('.a').text(arr[0]);
$('.b').text(arr[1]);