new Console(options)


将其设置为 true 会在检查值时启用颜色。设置为 false 会在检查值时禁用颜色。设置为 'auto' 会根据 isTTY 属性的值以及相应流上 getColorDepth() 返回的值来决定是否支持颜色。

如果同时设置了 inspectOptions.colors,则不能使用此选项。

默认值: 'auto'

  • inspectOptions <Object> | <Map> 指定传递给 util.inspect() 的选项。可以是一个选项对象,或者如果希望对 stdout 和 stderr 使用不同的选项,则可以是一个从流对象到选项的 Map
  • groupIndentation <number> 设置分组缩进。 默认值: 2

创建一个新的 Console 实例,包含一个或两个可写流实例。stdout 是用于打印日志或信息输出的可写流。stderr 用于输出警告或错误。如果未提供 stderr,则使用 stdout 作为 stderr

【Creates a new Console with one or two writable stream instances. stdout is a writable stream to print log or info output. stderr is used for warning or error output. If stderr is not provided, stdout is used for stderr.】

import { createWriteStream } from 'node:fs';
import { Console } from 'node:console';
// Alternatively
// const { Console } = console;

const output = createWriteStream('./stdout.log');
const errorOutput = createWriteStream('./stderr.log');
// Custom simple logger
const logger = new Console({ stdout: output, stderr: errorOutput });
// use it like console
const count = 5;
logger.log('count: %d', count);
// In stdout.log: count 5const fs = require('node:fs');
const { Console } = require('node:console');
// Alternatively
// const { Console } = console;

const output = fs.createWriteStream('./stdout.log');
const errorOutput = fs.createWriteStream('./stderr.log');
// Custom simple logger
const logger = new Console({ stdout: output, stderr: errorOutput });
// use it like console
const count = 5;
logger.log('count: %d', count);
// In stdout.log: count 5

全局 console 是一个特殊的 Console,其输出被发送到 process.stdoutprocess.stderr。它等同于调用:

【The global console is a special Console whose output is sent to process.stdout and process.stderr. It is equivalent to calling:】

new Console({ stdout: process.stdout, stderr: process.stderr });