Node.js 新控制台()方法
原文:https://www.geeksforgeeks.org/node-js-new-console-method/
控制台模块提供了一个简单的调试控制台,由 web 浏览器提供,它导出两个特定的组件:
- 一个控制台类,可用于写入任何 Node.js 流。例如: console.log() 、 console.error()、等。
- 无需导入控制台即可使用的全局控制台。例如: process.stdout、process.stderr、等。
新 console() (在 v8.0.0 中添加)方法是一个内置的“Console”模块的应用程序编程接口,它创建了一个具有单个或多个可写流实例的新 Console,其中 stdout 是可写流, stderr 用于警告或错误输出。如果没有提供标准错误,则标准错误使用标准输出。它是一个控制台,其输出被发送到进程。stdout 和进程。stderr 。
注意:全局控制台方法既不是一致同步的,也不是一致异步的。
语法:
new Console(options);
论据:
const options = {
stdout: writableStream,
stderr: writableStream,
ignoreErrors: true,
colorMode:true
};
为了使用这个方法,我们需要使用( new Console() )方法创建一个控制台,我们需要导入“控制台”和“ fs ”模块。
const console = require('console');
const fs = require('fs');
参数:该功能接受如上所述和如下所述的对象/参数列表:
选项 < 对象 > : 它在选项对象中可能有以下元素。
- stdout < 小溪。可写 > :接受从 fs 模块导入的写流。
- stderr < 小溪。可写 > :也接受从 fs 模块导入的写流。
- 忽略错误 < 布尔 > :传递的默认值为真。它会忽略写入底层流时的错误。
- color mode<boolean>|<string>:传递的默认值为“ auto ”。它用于设置仅支持此控制台实例的颜色。根据设置的颜色模式,它可以设置为真、假或“自动”。
- 检查选项 < 对象 > : 它指定传递给util . inspect()方法的选项。
- 组缩进 < 号* > :* 默认值设置为 2。用于设置组缩进。
返回值:其输出通过 <流发送到由 fs 模块创建的 process.stdout 和 process.stderr 文件。可写> 。
下面的例子说明了在 Node.js 中使用新的控制台(选项)方法
示例 1:* 文件名:index.js***
java 描述语言
*// Node.js program to demonstrate the
// new Console() method
// Using require to access fs module
const fs = require('fs');
// Using require to access console module
const { Console } = require('console');
// Creating write Stream
const output = fs.createWriteStream('./out.log');
const errorOutput = fs.createWriteStream('./err.log');
//
const options = { stdout: output, stderr: errorOutput,
ignoreErrors: true, colorMode: false };
const logger = new Console(options);
const count = 5;
// Using like console
logger.log('count: %d', count);
console.log("Successfully created and logged via console...", )*
使用以下命令运行 index.js 文件:
*node index.js*
输出:
注意:*上面的 node.js 示例将在 index.js* 文件所在的同一个文件夹中创建日志文件(out & err)。
>>通过控制台成功创建和记录…
示例 2:* 文件名:index.js***
java 描述语言
*// Node.js program to demonstrate the
// new Console() method
// Using require to access fs module
const fs = require('fs');
// Using require to access console module
const console = require('console');
const { Console } = console;
try {
// Creating write Stream
const output = fs.createWriteStream('./outputlog.txt');
const error = fs.createWriteStream('./errlog.txt');
// Creating new Console
const objLogger = new Console(
{ stdout: output, stderr: error,
ignoreErrors: true, colorMode: true }
);
// Custom write Stream
const outt = fs.createWriteStream('./output.log');
const err = fs.createWriteStream('./error.log');
// Another way to create console
// (default values are passed to options)
const logObject = new console.Console(outt, err);
// Creating family object
var family = {};
family.Head = 'Miss Sanno';
family.headDesignation = 'Teacher';
family.Member1 = 'Miss Sanchi';
family.member1Designation = 'Kid';
family.Member2 = 'Master Amit';
family.member2Designation = 'Student';
// Creating constant value count
const count = 25+75*5-5/2;
// Writing via console
objLogger.log('Family: %s', family);
// Printing Family Object to console
console.log('Family Stream Created: ', family);
// Writing via console
logObject.log('Count: %s', count);
// Printing count to console
console.log('Count Stream Created: ', count);
// console.log(logObject.family.error)
}
catch {
console.error(new Error(
'Oops, some error happened in family...'));
// Prints: [Error: Oops, some error
// happened in family...], to stderr
}*
使用以下命令运行 index.js 文件:
*node index.js*
输出:
注意:上面的 node.js 示例将在 index.js 文件所在的同一个文件夹中创建日志文件(输出&错误)。 家庭流创建:{ 头:【桑诺小姐】, 头指定:【老师】, 成员 1:【桑奇小姐】, 成员 1 指定:【小鬼】, 成员 2:【阿米特大师】, 成员 2 指定:【学生】 } 计数流创建:397.5
参考:https://nodejs . org/API/console . html # console _ new _ console _ options
版权属于:月萌API www.moonapi.com,转载请注明出处