是否可以使用 varName1[varName2] 从数组中检索值。在下面的示例中,.el 是一个选择框,thisVal 可能 = 2 并且 thisName = 'B' 这应该导致答案 'U' 事实上我得到了未定义
<script>
var A = ['B','B','Z','Z']
var B = ['C','O','U','C2','C3','D']
var C = ['D','Z','D','Z']
$('.el').on('change', function() {
var thisVal = this.value
var thisName = this.name
var nextName = thisName[thisVal]
alert( nextName );
})
</script>
最佳答案
如果你的数组在全局范围内,你可以使用。
window[thisName][thisVal]
示例
var A = ['B','B','Z','Z'];
var B = ['C','O','U','C2','C3','D'];
var C = ['D','Z','D','Z'];
var thisVal = 2;
var thisName = 'B';
console.log(window[thisName][thisVal]);
作为替代方案,您可以使用对象来存储数组,并且使用对象代替窗口
。
示例
const obj = {
A: ['B','B','Z','Z'],
B: ['C','O','U','C2','C3','D'],
C: ['D','Z','D','Z']
}
const thisVal = 2;
const thisName = 'B';
console.log(obj[thisName][thisVal]);
关于javascript - 在 Javascript 中使用两个变量从数组中进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49296283/