在写js的时候发现需要动态拼接一个参数名称,并且通过this调用这个参数。
问题
var v_1 = "我是v_1 的值";
var v_2 = "我是v_2 的值";
var v_ = 'v_' + ${value}; //拼接变量名
console.log( v_ );
若value=1,此时输出打印 v_ 的值为:v_1 字符串,而不是我们想要的 v_1 变量的值;
解决办法
我们想打印出真正 v_1 变量的值时,就需要用到这个函数:eval();
var v_1 = "我是v_1 的值";
var v_2 = "我是v_2 的值";
var v_ = 'v_' + ${value}; //拼接变量名
console.log( eval( v_) );
这时候输出打印的就会是v_1 变量的值;