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

时间:2015-07-20 02:30:40

标签: javascript multidimensional-array console.log

我到处搜索过,我一开始并没有注意到这种奇怪的交互,但是现在我正在使用codeacademy学习JavaScript,而且当我这样做时,我会陷入JavaScript中的数组和对象:

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

它将代码记录在同一行中,而不是按照练习要求提供3行和3列,但是它允许我通过它,我在他们的论坛上搜索并且有用户要求同样的事情未答复,我尝试过重置浏览器甚至更换浏览器等可能的修复方法。

4 个答案:

答案 0 :(得分:1)

尝试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中的样子(在其他浏览器中看起来很相似)。

enter image description here

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

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

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);

答案 3 :(得分:-1)

这是正常的,甚至可能与浏览器不同,因为没有关于如何格式化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]);

这将在单独的行中输出单个“子阵列”。