我想创建一个像这样的数组:
var fruits[ ]=[ [1] ["Grapes","mango","orange"] , [2] ["banana"], [A] ["Avocado","Apple"] , [P] ["Pear","Papaya","pomegranate","plum"] ];
相应地,我想使用键值对或类似的方式访问上述数组。
例如,如果我有一个包含值的下拉列表:
<select>
<option value="1">1</option>
<option value="2">2</option>
<option value="A">A</option>
<option value="P">P</option>
</select>
根据我的选择,它应该使用 for 循环显示相应的值,就像如果我选择选项“A”然后使用 for 循环它应该显示与选项 A 对应的值,即。鳄梨苹果。
我怎样才能做到这一点?
最佳答案
您可以使用对象而不是数组,并在 select
上绑定(bind) change
事件,然后使用 for
循环。
var fruits = {
1: ["Grapes", "mango", "orange"],
2: ["banana"],
A: ["Avocado", "Apple"],
P: ["Pear", "Papaya", "pomegranate", "plum"]
}
$('select').change(function() {
var val = $(this).val();
if (fruits[val]) {
for (var i = 0; i < fruits[val].length; i++) {
console.log(fruits[val][i])
}
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
<option value="1">1</option>
<option value="2">2</option>
<option value="A">A</option>
<option value="P">P</option>
</select>
关于javascript - 仅使用 javascript 生成和访问具有键值对的二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41806500/