如何将此字符串转换为多维JavaScript数组

如何将此字符串转换为多维JavaScript数组,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我有一个接收字符串参数的函数,我需要将其转换为数组。例如: var param = "['Presidente', '', ''], ['Gerente de Operaciones', 'Presidente', ''], ['Gerente de Ventas', 'Presidente', '']"; function myFunc(data){ // DoSomethingHere } myFunc(param); 我需要将数据转换成数组,在这种情况下,它将有3个位置。我尝试过

我有一个接收字符串参数的函数,我需要将其转换为数组。例如:

var param = "['Presidente', '', ''], ['Gerente de Operaciones', 'Presidente', ''], ['Gerente de Ventas', 'Presidente', '']";

function myFunc(data){
  // DoSomethingHere
}

myFunc(param);
我需要将数据转换成数组,在这种情况下,它将有3个位置。我尝试过执行Split(),但没有成功。

您可以使用eval()执行。只需将内容包装在一个额外的“[]”中,使其成为一个数组

像这样:

var data = eval("[['Presidente', '', ''], ['Gerente de Operaciones', 'Presidente', ''], ['Gerente de Ventas', 'Presidente', '']]");

首先,确保对象正确,然后使用某种json解析器来解析字符串。

Ok,我确信我被否决了,因为“eval是邪恶的”。。使用Crockford的json2.js to.parse(),如果您计划在浏览器中处理不受信任的值,则会更安全。不知道为什么您会获得否决票,因为这是正确的答案。这会创建一个包含3个位置数据[0]、数据[1]和数据[2]的数组还是多维数组?谢谢,这正是我所寻找的,它工作起来很有魅力。我没有处理任何不可信的值,所以这不是问题。我的数据不是JSON格式的,我不需要JSON格式的。
param = "[" + param + "]";
var array = JSON.parse( param );