Node.js中console模块有哪些具体用法和细节可以详细讲解?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2088个文字,预计阅读时间需要9分钟。
Node.js API 详解之 console 模块用法
console 模块简介
console 模块提供了用于输出信息到控制台的简单方法,类似于 Web 浏览器中的 JavaScript 控制台。它提供了几种基本的方法,如 log、info、warn、error 等,用于输出不同级别的信息。
console 方法说明
console.log()
console.log() 方法用于输出信息到控制台,可以接受任意数量的参数。
console.info()
console.info() 方法用于输出信息到控制台,与 console.log() 类似,但通常用于输出一些较为重要的信息。
console.warn()
console.warn() 方法用于输出警告信息到控制台,表示可能出现的问题。
console.error()
console.error() 方法用于输出错误信息到控制台,表示程序中出现的错误。
console.log() 示例
javascriptconsole.log('Hello, world!');console.log(123);console.log({name: '张三', age: 18});console.log([1, 2, 3]);
本文实例讲述了Node.js API详解之 console模块用法。分享给大家供大家参考,具体如下:
console模块简介
说明:
console 模块提供了一个简单的调试控制台,类似于 Web 浏览器提供的 JavaScript 控制台。
console 模块导出了两个特定的组件:
一个 Console 类,包含 console.log() 、 console.error() 和 console.warn() 等方法,可以被用于写入到任何 Node.js 流。
一个全局的 console 实例,可被用于写入到 process.stdout 和 process.stderr。
全局的 console 使用时无需调用 require('console')。
demo:
const fs = require('fs'); /* 全局console */ console.log('你好世界'); // 输出: 你好世界 console.log('你好%s', '世界'); // 输出: 你好世界 console.error(new Error('错误信息')); // Error: 错误信息 // at Object. (/Users/xiaoqiang/Documents/work/demo/NodeApi/app.js:7:15) // at Module._compile (module.js:569:30) // at Object.Module._extensions..js (module.js:580:10) // at Module.load (module.js:503:32) // at tryModuleLoad (module.js:466:12) // at Function.Module._load (module.js:458:3) // at Function.Module.runMain (module.js:605:10) // at startup (bootstrap_node.js:158:16) // at bootstrap_node.js:575:3 const name = '描述'; console.warn(`警告:${name}`); //警告:描述 /* 全局console */ const out = fs.createWriteStream('./stdout.log'); const err = fs.createWriteStream('./stderr.log'); const myConsole = new console.Console(out, err); myConsole.log('你好世界'); // 打印: '你好世界'到 stdout.log myConsole.log('你好%s', '世界'); // 打印: '你好世界'到 stdout.log myConsole.error(new Error('错误信息')); // 打印: [Error: 错误信息]到 stderr.log const name = '描述'; myConsole.warn(`警告${name}`); //打印: '警告描述' 到 stderr.log
Console 类
说明:
Console 类可用于创建一个具有可配置的输出流的简单记录器,
可以通过require('console').Console或console.Console使用
demo:
const { Console } = require('console'); const { Console } = console;
new Console(stdout[, stderr])
说明:
通过传入一个或两个可写流实例,创建一个新的 Console 对象
stdout:一个可写流,用于打印日志或输出信息。
stderr: 用于输出警告或错误。
如果没有传入 stderr ,则警告或错误输出会被发送到 stdout
全局的 console 是一个特殊的 Console 实例,
它的输出会发送到 process.stdout 和 process.stderr
demo:
const { Console } = require('console'); const fs = require('fs'); const output = fs.createWriteStream('./stdout.log'); const errorOutput = fs.createWriteStream('./stderr.log'); const logger = new Console(output, errorOutput); // 像 console 一样使用 logger.log('name: %s', 'xiaoqiang'); //stdout.log 中打印: name: xiaoqiang
console.assert(value[, message][, …args])
说明:
一个简单的断言测试,验证 value 是否为真。
value:断言条件,如果不为真,则抛出 AssertionError
message:如果提供了 message,则使用 util.format() 格式化并作为错误信息使用。
区别于浏览器的console.assert(),Node中的assert()如果断言非真的话会抛出异常终止程序。
demo:
const output = fs.createWriteStream('./stdout.log'); const errorOutput = fs.createWriteStream('./stderr.log'); const logger = new Console(output, errorOutput); logger.assert(false, 'Whoops %s', 'didn\'t work') // AssertionError [ERR_ASSERTION]: Whoops didn't work
console.clear()
说明:
当 stdout 是一个 TTY 时,调用 console.clear() 将尝试清除 TTY。
当 stdout 不是一个TTY时,该方法什么都不做。
console.count([label])
说明:
维护一个指定名称的内部计数器, 并且输出该名称调用 console.count() 的次数。
label:计数器名称
demo:
> console.count() default: 1 undefined > console.count('default') default: 2 undefined > console.count('abc') abc: 1 undefined > console.count('xyz') xyz: 1 undefined > console.count('abc') abc: 2 undefined > console.count() default: 3 undefined
console.countReset([label = 'default'])
说明:
重置指定 label 的内部计数器。
label:计数器的名称, 默认为 'default'。
demo:
> console.count('abc'); abc: 1 undefined > console.countReset('abc'); undefined > console.count('abc'); abc: 1 undefined >
console.dir(obj[, options])
说明:
在 obj 上使用 util.inspect() 并打印结果字符串到 stdout,
util.inspect() 方法返回 object 的字符串表示,主要用于调试。
showHidden:如果为 true,则该对象中的不可枚举属性和 symbol 属性也会显示。默认为 false。
depth: 告诉 util.inspect() 函数当格式化对象时要递归多少次。 默认为 2。 设为 null 可无限递归。
colors: 如果为 true,则输出会带有 ANSI 颜色代码。 默认为 false。 颜色是可定制的,
demo:
console.dir(console) // Console { // log: [Function: bound consoleCall], // info: [Function: bound consoleCall], // warn: [Function: bound consoleCall], // error: [Function: bound consoleCall], // dir: [Function: bound consoleCall], // time: [Function: bound consoleCall], // timeEnd: [Function: bound consoleCall], // trace: [Function: bound consoleCall], // assert: [Function: bound consoleCall], // Console: [Function: Console], // debug: [Function: debug], // dirxml: [Function: dirxml], // table: [Function: table], // group: [Function: group], // groupCollapsed: [Function: groupCollapsed], // groupEnd: [Function: groupEnd], // clear: [Function: clear], // count: [Function: count], // markTimeline: [Function: markTimeline], // profile: [Function: profile], // profileEnd: [Function: profileEnd], // timeline: [Function: timeline], // timelineEnd: [Function: timelineEnd], // timeStamp: [Function: timeStamp] }
console.error([data][, …args])
说明:
打印到 stderr,并带上换行符。 可以传入多个参数。
demo:
console.error('error: %d', 0x100008); //error: 1048584
console.group([…label])
说明:
将后续行的缩进增加两个空格。
demo:
console.groupCollapsed()
说明:
console.group()的一个别名.
console.groupEnd()
说明:
将后续行的缩进减少两个空格。与console.group()搭配使用。
console.info([data][, …args])
说明:
console.info() 函数是 console.log() 的一个别名。
demo:
console.info('name: %s', 'xiaoqiang');s //name: xiaoqiang
console.log([data][, …args])
说明:
打印到 stdout,并带上换行符。
demo:
console.log('name: %s', 'xiaoqiang'); //name: xiaoqiang console.log('name:', 'xiaoqiang'); //name: xiaoqiang
console.time(label)
说明:
启动一个定时器,用以计算一个操作的持续时间。
定时器有一个唯一的 label 标识。
当调用 console.timeEnd() 时,可以使用相同的 label 来停止定时器,
并以毫秒为单位将持续时间输出到 stdout。 定时器持续时间精确到亚毫秒。
demo:
console.time('run time'); for (var i = 100000; i >= 0; i--) {} console.timeEnd('run time'); //run time: 0.718ms
console.timeEnd(label)
说明:
停止之前通过调用 console.time() 启动的定时器,并打印结果到 stdout
console.trace([message][, …args])
说明:
打印字符串 'Trace :' 到 stderr ,并通过 util.format() 格式化消息堆栈打印代码踪迹。
用以跟踪代码的当前位置。
demo:
console.trace('run time Error'); // Trace: run time Error // at Object. (/Users/xiaoqiang/Documents/work/demo/NodeApi/app.js:5:9) // at Module._compile (module.js:569:30) // at Object.Module._extensions..js (module.js:580:10) // at Module.load (module.js:503:32) // at tryModuleLoad (module.js:466:12) // at Function.Module._load (module.js:458:3) // at Function.Module.runMain (module.js:605:10) // at startup (bootstrap_node.js:158:16) // at bootstrap_node.js:575:3
console.warn([data][, …args])
说明:
console.warn()函数是console.error()的一个别名。
希望本文所述对大家node.js程序设计有所帮助。
本文共计2088个文字,预计阅读时间需要9分钟。
Node.js API 详解之 console 模块用法
console 模块简介
console 模块提供了用于输出信息到控制台的简单方法,类似于 Web 浏览器中的 JavaScript 控制台。它提供了几种基本的方法,如 log、info、warn、error 等,用于输出不同级别的信息。
console 方法说明
console.log()
console.log() 方法用于输出信息到控制台,可以接受任意数量的参数。
console.info()
console.info() 方法用于输出信息到控制台,与 console.log() 类似,但通常用于输出一些较为重要的信息。
console.warn()
console.warn() 方法用于输出警告信息到控制台,表示可能出现的问题。
console.error()
console.error() 方法用于输出错误信息到控制台,表示程序中出现的错误。
console.log() 示例
javascriptconsole.log('Hello, world!');console.log(123);console.log({name: '张三', age: 18});console.log([1, 2, 3]);
本文实例讲述了Node.js API详解之 console模块用法。分享给大家供大家参考,具体如下:
console模块简介
说明:
console 模块提供了一个简单的调试控制台,类似于 Web 浏览器提供的 JavaScript 控制台。
console 模块导出了两个特定的组件:
一个 Console 类,包含 console.log() 、 console.error() 和 console.warn() 等方法,可以被用于写入到任何 Node.js 流。
一个全局的 console 实例,可被用于写入到 process.stdout 和 process.stderr。
全局的 console 使用时无需调用 require('console')。
demo:
const fs = require('fs'); /* 全局console */ console.log('你好世界'); // 输出: 你好世界 console.log('你好%s', '世界'); // 输出: 你好世界 console.error(new Error('错误信息')); // Error: 错误信息 // at Object. (/Users/xiaoqiang/Documents/work/demo/NodeApi/app.js:7:15) // at Module._compile (module.js:569:30) // at Object.Module._extensions..js (module.js:580:10) // at Module.load (module.js:503:32) // at tryModuleLoad (module.js:466:12) // at Function.Module._load (module.js:458:3) // at Function.Module.runMain (module.js:605:10) // at startup (bootstrap_node.js:158:16) // at bootstrap_node.js:575:3 const name = '描述'; console.warn(`警告:${name}`); //警告:描述 /* 全局console */ const out = fs.createWriteStream('./stdout.log'); const err = fs.createWriteStream('./stderr.log'); const myConsole = new console.Console(out, err); myConsole.log('你好世界'); // 打印: '你好世界'到 stdout.log myConsole.log('你好%s', '世界'); // 打印: '你好世界'到 stdout.log myConsole.error(new Error('错误信息')); // 打印: [Error: 错误信息]到 stderr.log const name = '描述'; myConsole.warn(`警告${name}`); //打印: '警告描述' 到 stderr.log
Console 类
说明:
Console 类可用于创建一个具有可配置的输出流的简单记录器,
可以通过require('console').Console或console.Console使用
demo:
const { Console } = require('console'); const { Console } = console;
new Console(stdout[, stderr])
说明:
通过传入一个或两个可写流实例,创建一个新的 Console 对象
stdout:一个可写流,用于打印日志或输出信息。
stderr: 用于输出警告或错误。
如果没有传入 stderr ,则警告或错误输出会被发送到 stdout
全局的 console 是一个特殊的 Console 实例,
它的输出会发送到 process.stdout 和 process.stderr
demo:
const { Console } = require('console'); const fs = require('fs'); const output = fs.createWriteStream('./stdout.log'); const errorOutput = fs.createWriteStream('./stderr.log'); const logger = new Console(output, errorOutput); // 像 console 一样使用 logger.log('name: %s', 'xiaoqiang'); //stdout.log 中打印: name: xiaoqiang
console.assert(value[, message][, …args])
说明:
一个简单的断言测试,验证 value 是否为真。
value:断言条件,如果不为真,则抛出 AssertionError
message:如果提供了 message,则使用 util.format() 格式化并作为错误信息使用。
区别于浏览器的console.assert(),Node中的assert()如果断言非真的话会抛出异常终止程序。
demo:
const output = fs.createWriteStream('./stdout.log'); const errorOutput = fs.createWriteStream('./stderr.log'); const logger = new Console(output, errorOutput); logger.assert(false, 'Whoops %s', 'didn\'t work') // AssertionError [ERR_ASSERTION]: Whoops didn't work
console.clear()
说明:
当 stdout 是一个 TTY 时,调用 console.clear() 将尝试清除 TTY。
当 stdout 不是一个TTY时,该方法什么都不做。
console.count([label])
说明:
维护一个指定名称的内部计数器, 并且输出该名称调用 console.count() 的次数。
label:计数器名称
demo:
> console.count() default: 1 undefined > console.count('default') default: 2 undefined > console.count('abc') abc: 1 undefined > console.count('xyz') xyz: 1 undefined > console.count('abc') abc: 2 undefined > console.count() default: 3 undefined
console.countReset([label = 'default'])
说明:
重置指定 label 的内部计数器。
label:计数器的名称, 默认为 'default'。
demo:
> console.count('abc'); abc: 1 undefined > console.countReset('abc'); undefined > console.count('abc'); abc: 1 undefined >
console.dir(obj[, options])
说明:
在 obj 上使用 util.inspect() 并打印结果字符串到 stdout,
util.inspect() 方法返回 object 的字符串表示,主要用于调试。
showHidden:如果为 true,则该对象中的不可枚举属性和 symbol 属性也会显示。默认为 false。
depth: 告诉 util.inspect() 函数当格式化对象时要递归多少次。 默认为 2。 设为 null 可无限递归。
colors: 如果为 true,则输出会带有 ANSI 颜色代码。 默认为 false。 颜色是可定制的,
demo:
console.dir(console) // Console { // log: [Function: bound consoleCall], // info: [Function: bound consoleCall], // warn: [Function: bound consoleCall], // error: [Function: bound consoleCall], // dir: [Function: bound consoleCall], // time: [Function: bound consoleCall], // timeEnd: [Function: bound consoleCall], // trace: [Function: bound consoleCall], // assert: [Function: bound consoleCall], // Console: [Function: Console], // debug: [Function: debug], // dirxml: [Function: dirxml], // table: [Function: table], // group: [Function: group], // groupCollapsed: [Function: groupCollapsed], // groupEnd: [Function: groupEnd], // clear: [Function: clear], // count: [Function: count], // markTimeline: [Function: markTimeline], // profile: [Function: profile], // profileEnd: [Function: profileEnd], // timeline: [Function: timeline], // timelineEnd: [Function: timelineEnd], // timeStamp: [Function: timeStamp] }
console.error([data][, …args])
说明:
打印到 stderr,并带上换行符。 可以传入多个参数。
demo:
console.error('error: %d', 0x100008); //error: 1048584
console.group([…label])
说明:
将后续行的缩进增加两个空格。
demo:
console.groupCollapsed()
说明:
console.group()的一个别名.
console.groupEnd()
说明:
将后续行的缩进减少两个空格。与console.group()搭配使用。
console.info([data][, …args])
说明:
console.info() 函数是 console.log() 的一个别名。
demo:
console.info('name: %s', 'xiaoqiang');s //name: xiaoqiang
console.log([data][, …args])
说明:
打印到 stdout,并带上换行符。
demo:
console.log('name: %s', 'xiaoqiang'); //name: xiaoqiang console.log('name:', 'xiaoqiang'); //name: xiaoqiang
console.time(label)
说明:
启动一个定时器,用以计算一个操作的持续时间。
定时器有一个唯一的 label 标识。
当调用 console.timeEnd() 时,可以使用相同的 label 来停止定时器,
并以毫秒为单位将持续时间输出到 stdout。 定时器持续时间精确到亚毫秒。
demo:
console.time('run time'); for (var i = 100000; i >= 0; i--) {} console.timeEnd('run time'); //run time: 0.718ms
console.timeEnd(label)
说明:
停止之前通过调用 console.time() 启动的定时器,并打印结果到 stdout
console.trace([message][, …args])
说明:
打印字符串 'Trace :' 到 stderr ,并通过 util.format() 格式化消息堆栈打印代码踪迹。
用以跟踪代码的当前位置。
demo:
console.trace('run time Error'); // Trace: run time Error // at Object. (/Users/xiaoqiang/Documents/work/demo/NodeApi/app.js:5:9) // at Module._compile (module.js:569:30) // at Object.Module._extensions..js (module.js:580:10) // at Module.load (module.js:503:32) // at tryModuleLoad (module.js:466:12) // at Function.Module._load (module.js:458:3) // at Function.Module.runMain (module.js:605:10) // at startup (bootstrap_node.js:158:16) // at bootstrap_node.js:575:3
console.warn([data][, …args])
说明:
console.warn()函数是console.error()的一个别名。
希望本文所述对大家node.js程序设计有所帮助。

