稳定性: 2 - 稳定

    console 模块提供了一个简单的调试控制台,类似于 Web 浏览器提供的 JavaScript 控制台。

    该模块导出两个特定组件:

    • Console 类,包含 console.log()console.error()console.warn() 等方法,可用于写入任何 Node.js 流。
    • 全局的 console 实例,配置为写入 [process.stdout] 和 [process.stderr]。 使用时无需调用 require('console')

    注意:全局的 console 对象的方法既不像浏览器中的 API 那样总是同步的,也不像其他 Node.js 流那样总是异步的。 详见[进程 I/O][note on process I/O]。

    使用全局 console 的示例:

    1. console.log('你好世界');
    2. // 打印到 stdout: 你好世界
    3. console.log('你好%s', '世界');
    4. // 打印到 stdout: 你好世界
    5. console.error(new Error('错误信息'));
    6. // 打印错误信息和堆栈跟踪到 stderr:
    7. // Error: 错误信息
    8. // at [eval]:5:15
    9. // at Script.runInThisContext (node:vm:132:18)
    10. // at Object.runInThisContext (node:vm:309:38)
    11. // at node:internal/process/execution:77:19
    12. // at [eval]-wrapper:6:22
    13. // at evalScript (node:internal/process/execution:76:60)
    14. // at node:internal/main/eval_string:23:3
    15. const name = '描述';
    16. console.warn(`警告${name}`);
    17. // 打印到 stderr: 警告描述

    使用 Console 类的示例:

    1. const out = getStreamSomehow();
    2. const err = getStreamSomehow();
    3. const myConsole = new console.Console(out, err);
    4. myConsole.log('你好世界');
    5. // 打印到 out: 你好世界
    6. myConsole.log('你好%s', '世界');
    7. // 打印到 out: 你好世界
    8. myConsole.error(new Error('错误信息'));
    9. // 打印到 err: [Error: 错误信息]
    10. const name = '描述';
    11. myConsole.warn(`警告${name}`);
    12. // 打印到 err: 警告描述