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