Skip to content

Console

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

全局使用示例:

js
console.log("hello %s", "world");
// 输出:hello world

console.error(new Error("Whoops, something bad happened"));
// 输出:Error: Whoops, something bad happened
// at Object.<anonymous> (/Users/lihaichao/Desktop/lhc_doc/docs/server/nodejs/demo.js:4:15)
// at Module._compile (node:internal/modules/cjs/loader:1159:14)
// at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
// at Module.load (node:internal/modules/cjs/loader:1037:32)
// at Module._load (node:internal/modules/cjs/loader:878:12)
// at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
// at node:internal/main/run_main_module:23:47

const name = "Will Robinson";
console.warn(`Danger ${name}! Danger!`);
// 输出:Danger Will Robinson! Danger!

Console 类的示例:

js
const { Console } = require("node:console");
const fs = require("node:fs");
const stdout = fs.createWriteStream("./stdout.log");
const stderr = fs.createWriteStream('./stderr.log')

// 此写法相当于全局写法
const myConsole = new Console({stdout: process.stdout, stderr: process.stderr});
myConsole.log("lhc")
// 控制台输出:lhc

// 创建一个包含一个或两个可写流实例的新 Console 实例
// stdout 是用于打印日志或信息输出的可写流
// stderr 用于警告或错误输出
// 如果 stderr 未提供, stdout 则用于 stderr 
const myCon = new Console({stdout: stdout, stderr: stderr})

myCon.log('你好')
// 在 stdout.log 文件输出:你好

console.assert

TIP

console.assert(value[, ...message])

  • 参数一:测试真实性的价值
  • 参数二:除了 value 以外,所有参数都用作错误消息

使用示例:

js
console.assert(true, 'test1')
console.assert(false, 'test2')
// 输出:Assertion failed: test2

console.clear

清楚控制台内容,具体操作可能因操作系统和终端类型而异

console.count

TIP

console.count([label])

控制台执行计数器

label 计数器的显示标签。默认值: 'default'

js
console.count()
// 输出:default: 1

console.count('abc')
// 输出:abc: 1

console.countReset

重置特定于 的 label 内部计数器, 对应 console.count() 方法

console.time

启动可用于计算操作持续时间的计时器

console.timeEnd

停止以前调用 console.time() 启动的计时器,并将结果打印到控制台,以秒为单位

console.timeLog

在已经调用 console.time() 时,执行到 timeLog 时,所用时间在控制台打印出来

还有更多,具体根据项目需求,查看node官网

Released under the MIT License.