javascript - 如何使用动态创建的名称访问 JavaScript 数组?

标签 javascript arrays

这是我正在尝试做的事情的一个非常精简的示例。这些数组是使用服务器端代码生成的,我不知道其中会有哪些数组 只是它们始终是“数组”后跟一个数字。

var array1 = ['cat','dog','fish','bird'];
var array2 = ['taco','pizza','burger','salad'];
var array3 = ['maple','elm','pine'];

用户从 select-1 中选择一个选项

<select id="select-1" onchange="getArray()">
    <option value="1">Pets</option>
    <option value="2">Foods</option>
    <option value="3">Trees</option>
</select>

然后我需要我的函数来访问与 select-1 的值相对应的正确数组。 select-1中出现的每个选项都会有一个对应的数组。

function getArray() {
    var x = document.getElementById("select-1").value;

    //how do I access "arrayx"?

    var y = arrayx[0];
}

如何编写函数以从正确的数组中获取值?我需要类似的东西

arrayname = 'array' + x;

但我不知道如何从这里到达那里。

这是一个用于实验的 fiddle :http://jsfiddle.net/6yor1kp5/9/

最佳答案

如果是在浏览器的全局上下文中,则可以使用window[arrayname]

例如

var y = window["array"+x][0];

在你的 fiddle 中。

关于javascript - 如何使用动态创建的名称访问 JavaScript 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50976437/

相关文章:

c# - 多维数组 [][] 与 [,]

php - 无论如何要告诉 postgres 数组中的数据类型?

javascript - *实际*使用的是什么版本的 npm 库?

javascript - 如何提高 ServiceStack 服务器事件效率

javascript - 自动滚动到 Gridview asp.net 中最后插入的行

javascript - 按名称查找数组中的匹配对象,然后添加匹配对象的值

python - 与用零替换现有数组的值相比,为什么 Numpy 创建零数组要快得多?

javascript - 使用 casperjs 抓取表格

javascript - 如何在reactjs中进行内部重定向?

java - 将逗号分隔的字符串转换为整数数组的最佳方法