让我说我有这个;
var str = "array1";
var array1 = [a,b,c];
我正在寻找的是一种写这样的东西的方法(答案将是“a”);
var answer = str.value[0];
即。我希望能够使用存储在字符串str。
中的文本来访问数组“array1”感谢您的任何建议。 (如果您理解我从上面提出的要求,并且有一个简单的答案,则无需进一步阅读)
我的问题详情:
我在表单上有一些选项按钮。 当单击其中任何一个时,我运行一个函数并显示与单击的按钮相关的数组。每个按钮都有一个与之相关的不同2D数组。
我的想法是,如果需要array1,则通过传递值“array1option”来传递标识要使用的数组的值。然后在函数中,选择哪个数组并不重要,因为我只需要切掉字符串的“选项”部分并将结果数组存储到数组中(DesiredArray)。 其余代码将是用于显示整个2D数组DesiredArray的通用代码。
我的备份计划是使用3D数组(Javascript支持)但我会发现将数据放在单独的2D表中以便编辑更容易。
我确信最有效的方法是通过链接数据库,但我找不到任何真正简单的例子来展示我如何做到这一点,而且我对Javascript还不熟悉。
答案 0 :(得分:0)
传递数组对象本身而不是名称。大概(假设你使用jQuery)
var array1 = ['a', 'b', 'c'];
var array2 = ['d', 'e', 'f'];
function myFunction(arr) {
console.log( arr[0]);
}
// button1和button2的事件处理程序
$('#myButton1').on('click', function( evt) {
myFunction( array1):
);
$('#myButton2').on('click', function( evt) {
myFunction( array2):
);
答案 1 :(得分:-1)
引用这样的变量的最简单方法是将数组声明为另一个对象的属性:
var myStr = 'array1',
myObj = {
array1: ['a', 'b', 'c'],
array2: ['d', 'e', 'f']
};
console.log( myObj[myStr][0] ); // "a"