为什么这个简单的 javascript 数组会失败?

Why does this simple javascript array fail?

我变老了,或者只是生锈了,或者两者兼而有之,但是当我把它带到这里时,我羞愧地低下了头,因为一定有一些非常非常简单的东西我错过了。

我正在使用表格中的 Google Apps 脚本编写这篇文章。

为什么当我达到 j = 2 时就失败了?我已经尝试以我能想到的各种不同方式声明数组,没有任何东西超过 j=2。我错过了什么?我知道这很愚蠢。

function myFailure() {
  for (var j = 0; j < 10; j++) {
    for (var k = 0; k < 31; k++) {
      var item = 'Item '+k;
      let thisItem = new Array([],[]);
      thisItem[j][k] = item;  //the problem is happening here, once j=2 but why
      console.log(j,k);
      console.log(thisItem[j][k]);
    }
  }
}

myFailure();

试试这个:

function myFailure() {
  let thisItem = [];
  for (var j = 0; j < 10; j++) {
    thisItem[j] = []
    for (var k = 0; k < 31; k++) {
      thisItem[j][k] = `Item [${j}][${k}]`
      console.log(thisItem[j][k]);
    }
  }
}

部分执行日志

10:04:00 AM Info    Item [0][0]
10:04:00 AM Info    Item [0][1]
10:04:00 AM Info    Item [0][2]
10:04:00 AM Info    Item [0][3]
10:04:00 AM Info    Item [0][4]
10:04:00 AM Info    Item [0][5]