Javascript 2D数组未按预期返回结果

时间:2014-06-07 17:57:24

标签: javascript arrays

我有一个声明如下的数组:

var rangeValues = [[0.001, 0.01], [0.0000001, 0.000001]];

此数组用于填充下拉列表的值,因为我基本上需要每个下拉项的值的元组。我继续使用以下内容访问下拉列表的值:

rangeTuple = document.getElementById('rangeSelection').value;
console.log(rangeTuple);

selectedMinRange = rangeTuple[0];
selectedMaxRange = rangeTuple[1];
console.log(selectedMinRange +  " | " +  selectedMaxRange[1]);

我收到以下输出:

0.001,0.01
0 | .

根据我的理解(尽管受限于JS :)),rangeTuple应该是一个包含两个项目的数组。记录rangeTuple时,它看起来是正确的。但是,当我尝试将此元组中的项目分配给一对全局变量时,这些值不是我期望的值。

感谢任何帮助,

1 个答案:

答案 0 :(得分:2)

输入的值始终是字符串。您将需要拆分该字符串以按您希望的方式使用它:

rangeTuple = document.getElementById('rangeSelection').value;
console.log(rangeTuple);

// split it
rangeTuple = rangeTuple.split(",");

selectedMinRange = rangeTuple[0];
selectedMaxRange = rangeTuple[1];
console.log(selectedMinRange +  " | " +  selectedMaxRange);