在Javascript中访问数组值

在Javascript中访问数组值,javascript,Javascript,我不熟悉Java脚本。我有一个这样的数组 var red = [10, 20, 30]; var blue = [11, 21, 31]; var green = [12, 22, 32]; var userSelect = $("#Color").val(); 此处的userSelect应为“红色”、“蓝色”或“绿色”。我正在尝试从用户输入字符串获取数组。比如,如果他们输入字符串“green”,我将向他们显示绿色数组。到目前为止我试过的是 all =

我不熟悉Java脚本。我有一个这样的数组

    var red = [10, 20, 30];
    var blue = [11, 21, 31];
    var green = [12, 22, 32];
    var userSelect = $("#Color").val();
此处的
userSelect
应为“红色”、“蓝色”或“绿色”。我正在尝试从用户输入字符串获取数组。比如,如果他们输入字符串“green”,我将向他们显示绿色数组。到目前为止我试过的是

     all = [red, blue, green];
     desiredArray = all[userSelect];
但它不起作用。有人能给我指一下正确的方向吗?提前谢谢

将值存储在对象中而不是数组中,这样您就可以使用对象的
引用值。在动态确定属性名称时(在运行时才确定属性名称),此符号也非常有用

试试这个:

var red=[10,20,30];
var blue=[11,21,31];
绿色变量=[12,22,32];
var userSelect=$(“#颜色”).val();
var all={
红色:红色,
蓝色:蓝色,
绿色:绿色
};
$('#Color')。在('change',function()上{
警报(所有[此值]);
})

红色
绿色
蓝色

这不起作用,因为数组没有关于变量名的上下文。 你的一切看起来都像
[[1,2,3],[4,5,6],[7,8,9]
。它不理解红色、绿色或蓝色

您可以做的是在对象中指定这些

var all={
"red": red,
"green":green,
"blue": blue
}

desiredArray = all[userSelect];

这同样有效:只需获取用户的字符串并测试它是否匹配。缺点是,用户可能拼写错误或选择不存在的选项

var red=[10,20,30];
var blue=[11,21,31];
绿色变量=[12,22,32];
var userSelect=prompt(“选择红色、绿色或蓝色”);
开关(用户选择){
“绿色”案例:
警报('您选择绿色:'+绿色);
打破
案例“红色”:
警报(“您选择了红色:”+红色);
打破
“蓝色”案例:
警报(“您选择了蓝色:”+蓝色);
打破
违约:
提醒('检查拼写…');

}
很高兴它有帮助!很高兴有人愿意解释投票失败的原因吗?这将有助于我下次提出一个更好的问题。谢谢你的建议。实际上,我获取用户输入的地方是一个html“select”。因此,这些值是预定义的。