我到处搜索过,我一开始并没有注意到这种奇怪的交互,但是现在我正在使用codeacademy学习JavaScript,而且当我这样做时,我会陷入JavaScript中的数组和对象:
var newArray = [[1, 1, 1], [1, 1, 1], [1, 1, 1]];
console.log(newArray)
它将代码记录在同一行中,而不是按照练习要求提供3行和3列,但是它允许我通过它,我在他们的论坛上搜索并且有用户要求同样的事情未答复,我尝试过重置浏览器甚至更换浏览器等可能的修复方法。
答案 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中的样子(在其他浏览器中看起来很相似)。
答案 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]);
这将在单独的行中输出单个“子阵列”。