我在字符串上调用.string方法,并将其设置为等于另一个变量。它返回带有[match value, index, and input]的数组。
当我尝试引用数组中的第二个元素时,它作为未定义返回。有人可以告诉我为什么吗?这是我的代码:

var str = "hello world"
var matchArray = str.match("ell");

=>matchArray  = ["ell",index:1,input:"hello world"]

var index = matchArray[1];
console.log(index);

=>undefined


提前致谢。

最佳答案

var str = "hello world"
var matchArray = str.match("ell");


matchArrayArray,但是在javascript中,我们知道可以在数组中设置属性,也可以是对象。

在上述情况下,matchArray在数组中仅包含数学。但是其他属性(例如indexinput)在对象中。

如果您执行console.dir(matchArray),您还将获得属性。

因此要访问这些属性,请使用对象符号,例如matchArray.indexmatchArray.input

07-28 02:22