我有一个 Javascript 数组:
animals = [
["cats", "dogs"],
["verrylongcat", "dog"],
["shortcat", "verrylongdog"],
["cat", "dog"]
]
我想在控制台中很好地显示它。有没有一种简单的方法可以使列的宽度固定,所以我得到这样的东西:
cats || dogs
verrylongcat || dog
shortcat || verrylongdog
cat || dog
animals
只是一个例子,我的数组也可以有 3 或 4 列甚至更多。
顺便说一句——我很震惊这个问题还没有被问到,但我到处都找过了,但找不到。我基本上是在问与 this question 相同的问题但对于 JavaScript/JS。
最佳答案
如果您只是在控制台中查找表格,您可以使用 console.table()
.
Node.js 支持:
- v10 - native console.table
- 在 v10 之前 - 使用 console.table npm module
演示:
const animals = [
["cats", "dogs"],
["verrylongcat", "dog"],
["shortcat", "verrylongdog"],
["cat", "dog"]
];
console.table(animals); // look in the browser's console
要在 HTML 页面上创建表格,请使用嵌套 Array.map()
与 template literals和 Array.join()
为表格创建行。使用 Element.innerHTML
将其分配给表的主体:
const animals = [
["cats", "dogs"],
["verrylongcat", "dog"],
["shortcat", "verrylongdog"],
["cat", "dog"]
];
const rows = animals.map((r) => `
<tr>
${r.map((c) => `<td>${c}</td>`).join('')}
</tr>
`).join('');
target.innerHTML = rows;
td {
padding: 0.2em 0.5em;
}
td:nth-child(2) {
border-left: 3px double;
}
<table>
<tbody id="target"></tbody>
</table>
关于javascript - 如何在 javascript 中打印具有固定列宽的二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50117793/