console: table() 静态方法

Baseline 已广泛支持

此特性已稳定,并兼容多种设备和浏览器版本。自 ⁨2015 年 11 月⁩起,所有浏览器均已支持此特性。

注意:此功能在 Web Workers 中可用。

console.table() 静态方法以表格形式显示数据。

语法

js
console.table(data)
console.table(data, columns)

参数

data

要显示的数据。这必须是数组或对象。数组中的每个项或对象中的每个属性都表示为表中的一行。表中的第一列标记为 (index),其值是数组索引或属性名。

如果数组中的元素或对象中的属性本身是数组或对象,则它们的项或属性将在行中进行枚举,每列一个。

请注意,在 Firefox 中,console.table() 仅限于显示 1000 行,包括标题行。

columns 可选

一个数组,可用于限制表中显示的列。如果 data 的每个条目都是数组,则包含索引;如果 data 的每个条目都是对象,则包含属性名。生成的表将仅包含与给定索引或名称匹配的项的列。

返回值

无(undefined)。

示例

原始类型集合

data 参数可以是数组或对象。

js
// an array of strings

console.table(["apples", "oranges", "bananas"]);
(index)
0 'apples'
1 'oranges'
2 'bananas'
js
// an object whose properties are strings

function Person(firstName, lastName) {
  this.firstName = firstName;
  this.lastName = lastName;
}

const me = new Person("Tyrone", "Jones");

console.table(me);
(index)
firstName 'Tyrone'
lastName 'Jones'

复合类型集合

如果数组中的元素或对象中的属性本身是数组或对象,则它们的元素或属性将在行中进行枚举,每列一个。

js
// an array of arrays

const people = [
  ["Tyrone", "Jones"],
  ["Janet", "Smith"],
  ["Maria", "Cruz"],
];
console.table(people);
(index) 0 1
0 'Tyrone' 'Jones'
1 'Janet' 'Smith'
2 'Maria' 'Cruz'
js
// an array of objects

function Person(firstName, lastName) {
  this.firstName = firstName;
  this.lastName = lastName;
}

const tyrone = new Person("Tyrone", "Jones");
const janet = new Person("Janet", "Smith");
const maria = new Person("Maria", "Cruz");

console.table([tyrone, janet, maria]);

如果数组包含对象,则列会用属性名标记。

(index) firstName lastName
0 'Tyrone' 'Jones'
1 'Janet' 'Smith'
2 'Maria' 'Cruz'
js
// an object whose properties are objects

const family = {};

family.mother = new Person("Janet", "Jones");
family.father = new Person("Tyrone", "Jones");
family.daughter = new Person("Maria", "Jones");

console.table(family);
(index) firstName lastName
daughter 'Maria' 'Jones'
father 'Tyrone' 'Jones'
mother 'Janet' 'Jones'

限制显示的列

默认情况下,console.table() 会列出每一行的所有元素。您可以使用可选的 columns 参数来选择要显示的一组列。

js
// an array of objects, logging only firstName

function Person(firstName, lastName) {
  this.firstName = firstName;
  this.lastName = lastName;
}

const tyrone = new Person("Tyrone", "Jones");
const janet = new Person("Janet", "Smith");
const maria = new Person("Maria", "Cruz");

console.table([tyrone, janet, maria], ["firstName"]);
(index) firstName
0 'Tyrone'
1 'Janet'
2 'Maria'

规范

规范
控制台
# table

浏览器兼容性

另见