使用jsbin.com工具测试Javascript代码我使用了eval()函数,但JSBin发出的警告称“Eval is Evil”。我做了一些关于使用eval()函数的搜索,有些消息来源说总是可以避免使用eval()。
我的代码需要使用其他数组中的参数访问数组。看到这段代码:
var Collection = {
"cell" : "value[3]",
"lines" : "source[1..7]",
"title" : "greeting"
};
var Data = {
source : ["a", "b", "c"],
value : [
"done",
"easy",
"f",
"g",
"h",
"i",
"j"
],
greeting : "Hi!"
};
function Process()
{
var x = "cell";
console.log("value[4] = " + Data.value[4]);
console.log("C : " + Collection[x]);
console.log("value['cell'] = " + eval("Data." + Collection[x]));
}
输出
value[4] = h
C : value[3]
value['cell'] = g
recomendations表示使用点表示法进行访问,就像访问value [4]一样,但是要访问的值将包含在变量中,如'x',在本例中为内容“cell”。此值用于访问Collection数组,并选择将使用的值和Data数组。我使用eval()函数解决它。
如果没有eval()??
,有没有办法做到这一点