我试图在jQuery中创建动态变量.我尝试使用eval()它似乎工作正常,但我不认为eval()是一个jQuery函数.eval()jQuery中是否存在等价?在这里查看我的代码:http://jsfiddle.net/3CXgy/
var test = function(pos) {
alert(eval('COUNT_'+pos));
}
var COUNT_LEFT = 20;
var COUNT_RIGHT = 30;
test('LEFT');
test('RIGHT');
Run Code Online (Sandbox Code Playgroud)
除了使用之外,还有不同的方法eval()吗?我不确定eval()在上面的例子中是否完全没问题.
很少有任何理由使用eval
这是你的代码,假设vars是在头部定义的
var test = function(pos) {
alert(window['COUNT_'+pos]);
}
var COUNT_LEFT = 20;
var COUNT_RIGHT = 30;
test('LEFT');
test('RIGHT');
Run Code Online (Sandbox Code Playgroud)
要不污染全局命名空间,请使用
var COUNT = {"left":20, "right":30 }
var pos = "left";
alert(COUNT[pos]);
Run Code Online (Sandbox Code Playgroud)