javascript - 我想让一个变量看到它的值是另一个变量的名称并获取它的数组

标签 javascript arrays variables

var t1 = document.getElementById('t1').value;

var t2 = document.getElementById('t2').value;

var VA = ["VA", 4, 10.8, 18];

var DE = [3, 10.9, 6];

var GA = [77, 23.3, 8];

var AA = [21, 11, 2];

var KS = [23, 10.3, 3];

var LE = [2, 11.7, 7];

var NA = [11, 14.3, 5];

var UA = [71, 15.1, 16];

我有上面的一些代码,并且我的第一个变量 t1 将具有任何其他变量(不包括 t2)的字符串值,我希望它看到这一点并能够使用其他数组。

t1 或 t2 将输入一个值,例如 VA 或 DE

举个例子

t2 可以作为 GA 输入

对于我的代码,我希望它看到 t2 是 GA,并将 t2 cahnage 到上面的变量 GA。

最佳答案

您应该将这些变量创建为对象属性。以下是该解决方案的工作原理:

var t1 = document.getElementById('t1');
var out = document.getElementById('out');

var vars = {
    VA: ["VA", 4, 10.8, 18],
    DE: [3, 10.9, 6],
    GA: [77, 23.3, 8],
    AA: [21, 11, 2],
    KS: [23, 10.3, 3],
    LE: [2, 11.7, 7],
    NA: [11, 14.3, 5],
    UA: [71, 15.1, 16]
};

t1.oninput = function() { 
    var name = t1.value;
    var value = vars[name];
    // Use value in any desired way.
    out.textContent = JSON.stringify(value);
}
Variable: <input id="t1"> (example: "VA")<br>
Content: <span id="out"></span>

或者,使用两个输入,并在键入时进行就地替换:

var t1 = document.getElementById('t1');
var t2 = document.getElementById('t2');

var vars = {
    VA: ["VA", 4, 10.8, 18],
    DE: [3, 10.9, 6],
    GA: [77, 23.3, 8],
    AA: [21, 11, 2],
    KS: [23, 10.3, 3],
    LE: [2, 11.7, 7],
    NA: [11, 14.3, 5],
    UA: [71, 15.1, 16]
};

t1.oninput = t2.oninput = function(e) { 
    var name = e.target.value;
    if (name in vars) {
        var value = vars[name];
        // Use value in any desired way. 
        e.target.value = JSON.stringify(value);
    }
}
Variable 1: <input id="t1"> (example: "VA")<br>
Variable 2: <input id="t2"> 

关于javascript - 我想让一个变量看到它的值是另一个变量的名称并获取它的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42868929/

相关文章:

javascript - 重新加载页面时,生产 URL 中的 Angular 2 会被破坏

javascript - 如何检索字符串中每对可能的数字的匹配项?

javascript - 附加到对象字面量

function - 将表名和列名定义为 plpgsql 函数中的参数?

linux - 运行 cron 后 Bash 清空变量,但手动运行

javascript - 我正在尝试在新窗口中打开 pdf 文件并在打开窗口后打开打印对话框

数组的Java ArrayList?

php - 格式化手机号码数组

php - 如何以编程方式生成字符串模式所有排列的数组?

java - 字符串在同一个类中不可访问