如何在JavaScript中正确访问2D数组的字符串?

时间:2013-07-24 19:41:07

标签: javascript arrays

解决

我认为这将是一项简单的任务,但我似乎无法弄清楚如何在JavaScript中正确访问2D数组的元素。

通过从对象获取键和值来创建数组:

uassPairs.push(value);
uassPairs[uassPairs.indexOf(value)][1] = key;

^在$.each循环内发生。

假设在uassPairs[0][0]我存储了字符串"foo"。如果我运行alert(uassPairs[0]);,则会在屏幕上显示foo

但是,如果我尝试通过"foo"访问uassPairs[0][0],则只显示字符串的第一个字符:f

此外,尝试访问uassPairs[i][1](其中i是某个索引),我再次只收到该字符串的第一个字母 - 澄清,存储在索引1列中的字符串。 arr[i][j]格式是我在这里看到大多数人处理数组的方式。

如何访问整个字符串,而不只是单个字符?

谢谢。

编辑:感谢dandavis,正确的语法是arr[0, 0],而不是arr[0][0]。欢呼声。

1 个答案:

答案 0 :(得分:0)

显然

uassPairs[uassPairs.indexOf(value)]

再次返回value。因此,如果value是一个字符串,那么像[1]这样的另一个索引访问将返回指定位置的字符。

奇怪的是,看起来好像你被允许为这个位置分配一些东西。但是,没有赋值,因此读取访问权限再次返回该字符。