如何在控制台中以表格格式显示多维 Javascript 数组?

How to display multi dimensional Javascript array in tabular format in the console?

我到处搜索,起初我没有注意到这种奇怪的交互,但现在我注意到了,我正在 codeacademy 学习 JavaScript,我被困在 JavaScript 的数组和对象中,当我这样做时:

var newArray = [[1, 1, 1], [1, 1, 1], [1, 1, 1]];
console.log(newArray)

它将代码记录在同一行中,而不是像练习要求的那样有 3 行和 3 列,但是它让我通过了它,我在他们的论坛上搜索过并且有用户要求相同未解决的问题,我已经尝试了可能的修复方法,例如重置浏览器甚至更改浏览器。

这很正常,甚至可能因浏览器而异,因为没有关于如何格式化 console.log 输出的规范。

你可以这样写:

var newArray = [[1, 1, 1], [1, 1, 1], [1, 1, 1]];
console.log(newArray[0]);
console.log(newArray[1]);
console.log(newArray[2]);
console.log(newArray[3]);

这将在单独的行上输出个人 "subarrays"。

尝试console.table()

var newArray = [[1, 1, 1], [1, 1, 1], [1, 1, 1]];
console.table(newArray);

这里列出了所有可供将来参考的控制台命令:https://developer.mozilla.org/en/docs/Web/API/console

这是它在 Firefox 中的样子(在其他浏览器中看起来类似)。

如果您使用 Chrome,请尝试 console.table(newArray)。

否则 console.dir(newArray) 可能会让事情变得更好一些。

您也可以使用自定义记录器:

var newArray = [[1,1,1], [1,1,1], [1,1,1]];

var logArrayOfArrays = function(array){
   var length = array.length;
   for(var i = 0; i < length ; i++){
       console.log(array[i]);
  }
}

logArrayOfArrays(newArray);