我得到了动态变量名
varname = "data" + newid + "['" + name + "']";
我想为动态变量赋值。我试过这个
eval(varname) = value;
但它不起作用。为了给动态变量赋值,我需要做什么?
我得到了动态变量名
varname = "data" + newid + "['" + name + "']";
我想为动态变量赋值。我试过这个
eval(varname) = value;
但它不起作用。为了给动态变量赋值,我需要做什么?
不要使用评估。不要使用动态变量。
如果您有一组无序的相关数据,请将其存储在一个对象中。
var myData = {};
myData[ newid + name ] = value;
虽然看起来你正在处理一个动态对象所以
myData[ newid ] = myData[ newid ] || {};
myData[ newid ][ name ] = value;
var data1 = { a: 200 };
var newid = 1;
var name = "a";
var varname = "data"+newid+"['"+name+"']";
var value = 3;
eval(varname + "=" + value); // change data1['a'] from 200 to 3
话虽如此,eval
是邪恶的。你真的确定你需要使用动态变量吗?