2012-08-07 75 views
0

我有一个嵌套的for循环,它创建一个表示多维数组的空字符串值。一旦for循环已经完成,结果是这样的:将字符串转换为多维数组

"[[0,0,0,0],[0,0,0,0]]" 

我想加入到我的代码中一个多维数组,我如何做到这一点?

我曾尝试:

map = eval("[[0,0,0,0],[0,0,0,0]]"); 

但这并不产生正确的多维数组我期待的。

我期待能够使用数组是这样的:

map[0][1] == 1; 

感谢

+0

你期望右边'1'来自哪里? – 2012-08-07 16:25:50

+0

什么产生初始字符串?什么消耗它?你以前使用过JSON吗? – 2012-08-07 16:25:59

+1

'JSON.parse()'会根据需要返回数组。但是,如果你在代码中生成它,为什么它是一个字符串呢? – 2012-08-07 16:26:36

回答

3

您可以解析使用JSON.parse()MDN docu)的字符串。

var str = "[[0,0,0,0],[0,0,0,0]]"; 

var map = JSON.parse(str); 

然而,在你的例子没有条目等于1,所以你需要map[0][1] == 1不会满足的方式。

+0

我意识到数组中没有显示1。我刚刚制作了这个字符串来举例说明它会是什么样子。并感谢你的例子,它完美的工作! – 2012-08-08 08:41:34