当array [index]明确存在时,为什么array [index + x]返回未定义?

时间:2019-07-14 15:33:08

标签: javascript arrays undefined

我正在尝试使用i + x时在for循环中简单地为数组建立索引。

假设我要访问arr[2]。控制台日志记录arr[2]显然返回arr[2],因为它存在。但是,当我尝试以arr[i + 2]的身份访问i等于0时,每次都返回undefined。

const input = [
  [1, 1, 1, 0, 0, 0],
  [0, 1, 0, 0, 0, 0],
  [1, 1, 1, 0, 0, 0],
  [0, 0, 2, 4, 4, 0],
  [0, 0, 0, 2, 0, 0],
  [0, 0, 1, 2, 4, 0]
]

function main(arr) {
  console.log(arr[2]);
  for (let i = 0; i < arr.length; i++) {
    for (let j = 0; j < arr[i].length; j++) {
      if (arr[i + 2] == undefined) {
        console.log(arr[i + 2])
        break;
      }
    }
  }
}

main(input);

i = 0时,arr[ i + 2 ] === arr[ 2 ]应当返回[ 1, 1, 1, 0, 0, 0 ],但它会以未定义的形式返回。

0 个答案:

没有答案