首页 > 解决方案 > 如何用 .js 文件中的字符串替换变量的名称?

问题描述

我想用另一个变量引用一个变量。第一个变量的值是一个等于第二个变量名称的字符串。怎么做,说:

var1 = "var2";
var2 = [1,2,3];

console.log(var1[0]);

并得到 1 而不是 'v'?

我的代码:

localStorage.setItem('scn', 'AR1');

var AR1 = [1,3,4,6];
var AR2 = [1,3,5,6];
var AS2 = [1,3,7,8,9,10];

here_idx = localStorage.getItem('scn').indexOf(1);

在这种情况下,here_idx 等于 2 而不是 0。

我尝试用错误解析它。我什至不知道如何在线搜索此类问题。我试过了。

标签: javascript

解决方案


您可以使用(not or ) 在范围内window[varname]获取先前声明的变量。varletconstwindow

小提琴因为片段不允许本地存储:https ://jsfiddle.net/o27andcx/

var AR1 = [1,3,4,6];
var AR2 = [1,3,5,6];
var AS2 = [1,3,7,8,9,10];

localStorage.setItem('scn', 'AR1');

here_var = localStorage.getItem('scn');

here_idx = window[here_var];

console.log(here_idx);

推荐阅读