我的代码段:
function receive(mag)
{
var text = eval(mag);
alert(text);
}
receive('["magnolia,", ["Magnolia (Flower)"], [], [], [], [], [], [[3, 19019, "INV_MAG_39 ", 5]]]');
当我在示例中传递字符串(如上所示)时,eval(mag)
不起作用。
但如果我直接这样做:
function receive(mag)
{
var text = eval('["magnolia,", ["Magnolia (Flower)"], [], [], [], [], [], [[3, 19019, "INV_MAG_39 ", 5]]]');
alert(text);
}
确实有效。 有没有人知道什么是错的?如何使用传递的变量?
答案 0 :(得分:4)
我认为你错过了括号:
eval('(' + mag + ')')
但为什么不使用JSON.parse ??
var text = JSON.parse(mag);