亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Node.js API詳解之 console模塊用法詳解

 更新時(shí)間:2020年05月12日 08:47:02   作者:李小強(qiáng)  
這篇文章主要介紹了Node.js API詳解之 console模塊用法,總結(jié)分析了Node.js API中console模塊基本函數(shù)、使用方法與操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Node.js API詳解之 console模塊用法。分享給大家供大家參考,具體如下:

console模塊簡(jiǎn)介

說(shuō)明:

console 模塊提供了一個(gè)簡(jiǎn)單的調(diào)試控制臺(tái),類(lèi)似于 Web 瀏覽器提供的 JavaScript 控制臺(tái)。
console 模塊導(dǎo)出了兩個(gè)特定的組件:
一個(gè) Console 類(lèi),包含 console.log() 、 console.error() 和 console.warn() 等方法,可以被用于寫(xiě)入到任何 Node.js 流。
一個(gè)全局的 console 實(shí)例,可被用于寫(xiě)入到 process.stdout 和 process.stderr。
全局的 console 使用時(shí)無(wú)需調(diào)用 require('console')。

demo:

const fs = require('fs');
/* 全局console */
console.log('你好世界');
// 輸出: 你好世界
console.log('你好%s', '世界');
// 輸出: 你好世界
console.error(new Error('錯(cuò)誤信息'));
// Error: 錯(cuò)誤信息
//  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('錯(cuò)誤信息'));
// 打印: [Error: 錯(cuò)誤信息]到 stderr.log
const name = '描述';
myConsole.warn(`警告${name}`);
//打?。?'警告描述' 到 stderr.log

Console 類(lèi)

說(shuō)明:

Console 類(lèi)可用于創(chuàng)建一個(gè)具有可配置的輸出流的簡(jiǎn)單記錄器,
可以通過(guò) require('console').Consoleconsole.Console 使用

demo:

const { Console } = require('console');
const { Console } = console;

new Console(stdout[, stderr])

說(shuō)明:

通過(guò)傳入一個(gè)或兩個(gè)可寫(xiě)流實(shí)例,創(chuàng)建一個(gè)新的 Console 對(duì)象
stdout:一個(gè)可寫(xiě)流,用于打印日志或輸出信息。
stderr: 用于輸出警告或錯(cuò)誤。
如果沒(méi)有傳入 stderr ,則警告或錯(cuò)誤輸出會(huì)被發(fā)送到 stdout
全局的 console 是一個(gè)特殊的 Console 實(shí)例,
它的輸出會(huì)發(fā)送到 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])

說(shuō)明:

一個(gè)簡(jiǎn)單的斷言測(cè)試,驗(yàn)證 value 是否為真。
value:斷言條件,如果不為真,則拋出 AssertionError
message:如果提供了 message,則使用 util.format() 格式化并作為錯(cuò)誤信息使用。
區(qū)別于瀏覽器的console.assert(),Node中的assert()如果斷言非真的話(huà)會(huì)拋出異常終止程序。

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()

說(shuō)明:

當(dāng) stdout 是一個(gè) TTY 時(shí),調(diào)用 console.clear() 將嘗試清除 TTY。
當(dāng) stdout 不是一個(gè)TTY時(shí),該方法什么都不做。

console.count([label])

說(shuō)明:

維護(hù)一個(gè)指定名稱(chēng)的內(nèi)部計(jì)數(shù)器, 并且輸出該名稱(chēng)調(diào)用 console.count() 的次數(shù)。
label:計(jì)數(shù)器名稱(chēng)

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'])

說(shuō)明:

重置指定 label 的內(nèi)部計(jì)數(shù)器。
label:計(jì)數(shù)器的名稱(chēng), 默認(rèn)為 'default'。

demo:

> console.count('abc');
abc: 1
undefined
> console.countReset('abc');
undefined
> console.count('abc');
abc: 1
undefined
>

console.dir(obj[, options])

說(shuō)明:

在 obj 上使用 util.inspect() 并打印結(jié)果字符串到 stdout,
util.inspect() 方法返回 object 的字符串表示,主要用于調(diào)試。
showHidden:如果為 true,則該對(duì)象中的不可枚舉屬性和 symbol 屬性也會(huì)顯示。默認(rèn)為 false。
depth: 告訴 util.inspect() 函數(shù)當(dāng)格式化對(duì)象時(shí)要遞歸多少次。 默認(rèn)為 2。 設(shè)為 null 可無(wú)限遞歸。
colors: 如果為 true,則輸出會(huì)帶有 ANSI 顏色代碼。 默認(rèn)為 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])

說(shuō)明:

打印到 stderr,并帶上換行符。 可以傳入多個(gè)參數(shù)。

demo:

console.error('error: %d', 0x100008);
//error: 1048584

console.group([…label])

說(shuō)明:

將后續(xù)行的縮進(jìn)增加兩個(gè)空格。

demo:

console.groupCollapsed()

說(shuō)明:

console.group()的一個(gè)別名.

console.groupEnd()

說(shuō)明:

將后續(xù)行的縮進(jìn)減少兩個(gè)空格。與console.group()搭配使用。

console.info([data][, …args])

說(shuō)明:

console.info() 函數(shù)是 console.log() 的一個(gè)別名。

demo:

console.info('name: %s', 'xiaoqiang');s
//name: xiaoqiang

console.log([data][, …args])

說(shuō)明:

打印到 stdout,并帶上換行符。

demo:

console.log('name: %s', 'xiaoqiang');
//name: xiaoqiang
console.log('name:', 'xiaoqiang');
//name: xiaoqiang

console.time(label)

說(shuō)明:

啟動(dòng)一個(gè)定時(shí)器,用以計(jì)算一個(gè)操作的持續(xù)時(shí)間。
定時(shí)器有一個(gè)唯一的 label 標(biāo)識(shí)。
當(dāng)調(diào)用 console.timeEnd() 時(shí),可以使用相同的 label 來(lái)停止定時(shí)器,
并以毫秒為單位將持續(xù)時(shí)間輸出到 stdout。 定時(shí)器持續(xù)時(shí)間精確到亞毫秒。

demo:

console.time('run time');
for (var i = 100000; i >= 0; i--) {}
console.timeEnd('run time');
//run time: 0.718ms

console.timeEnd(label)

說(shuō)明:

停止之前通過(guò)調(diào)用 console.time() 啟動(dòng)的定時(shí)器,并打印結(jié)果到 stdout

console.trace([message][, …args])

說(shuō)明:

打印字符串 'Trace :' 到 stderr ,并通過(guò) util.format() 格式化消息堆棧打印代碼蹤跡。
用以跟蹤代碼的當(dāng)前位置。

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])

說(shuō)明:

console.warn() 函數(shù)是 console.error() 的一個(gè)別名。

希望本文所述對(duì)大家node.js程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • typescript nodejs 依賴(lài)注入實(shí)現(xiàn)方法代碼詳解

    typescript nodejs 依賴(lài)注入實(shí)現(xiàn)方法代碼詳解

    今天分享的是用typescript語(yǔ)言實(shí)現(xiàn)的ioc模式,這邊用到的主要組件是 reflect-metadata 這個(gè)組件可以獲取或者設(shè)置元數(shù)據(jù)信息,接下來(lái)通過(guò)本文給大家介紹typescript nodejs 依賴(lài)注入實(shí)現(xiàn)方法,需要的朋友可以參考下
    2019-07-07
  • 解決node-sass下載不成功的問(wèn)題

    解決node-sass下載不成功的問(wèn)題

    這篇文章主要介紹了解決node-sass下載不成功的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Node 搭建一個(gè)靜態(tài)資源服務(wù)器的實(shí)現(xiàn)

    Node 搭建一個(gè)靜態(tài)資源服務(wù)器的實(shí)現(xiàn)

    這篇文章主要介紹了Node 搭建一個(gè)靜態(tài)資源服務(wù)器的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • nodejs個(gè)人博客開(kāi)發(fā)第七步?后臺(tái)登陸

    nodejs個(gè)人博客開(kāi)發(fā)第七步?后臺(tái)登陸

    這篇文章主要為大家詳細(xì)介紹了nodejs個(gè)人博客開(kāi)發(fā)的后臺(tái)登陸功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 基于html5和nodejs相結(jié)合實(shí)現(xiàn)websocket即使通訊

    基于html5和nodejs相結(jié)合實(shí)現(xiàn)websocket即使通訊

    HTML5 擁有許多引人注目的新特性,如 Canvas、本地存儲(chǔ)、多媒體編程接口、WebSocket 等等。雖然現(xiàn)在大家把它捧的很火的樣子,但是個(gè)人認(rèn)為它還需要其他平臺(tái)的支持才能真正的"火起來(lái)"
    2015-11-11
  • Centos7 安裝Node.js10以上版本的方法步驟

    Centos7 安裝Node.js10以上版本的方法步驟

    這篇文章主要介紹了Centos7 安裝Node.js10以上版本的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • nodejs處理tcp連接的核心流程

    nodejs處理tcp連接的核心流程

    這篇文章主要介紹了nodejs處理tcp連接的核心流程,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • 使用node.js中的Buffer類(lèi)處理二進(jìn)制數(shù)據(jù)的方法

    使用node.js中的Buffer類(lèi)處理二進(jìn)制數(shù)據(jù)的方法

    大家應(yīng)該都知道在客戶(hù)端JavaScript腳本代碼中,對(duì)二進(jìn)制數(shù)據(jù)并沒(méi)有提供一個(gè)很好的支持。然而,在處理TCP流或文件流時(shí),必須要處理二進(jìn)制數(shù)據(jù)。因此,下面通過(guò)這篇文章來(lái)一起看看利用node.js中的Buffer類(lèi)處理二進(jìn)制數(shù)據(jù)的方法,有需要的朋友們可以參考借鑒。
    2016-11-11
  • Grunt針對(duì)靜態(tài)文件的壓縮,版本控制打包的實(shí)例講解

    Grunt針對(duì)靜態(tài)文件的壓縮,版本控制打包的實(shí)例講解

    下面小編就為大家?guī)?lái)一篇Grunt針對(duì)靜態(tài)文件的壓縮,版本控制打包的實(shí)例講解。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-09-09
  • 基于nodejs實(shí)現(xiàn)微信支付功能

    基于nodejs實(shí)現(xiàn)微信支付功能

    這篇文章主要為大家詳細(xì)介紹了基于nodejs實(shí)現(xiàn)微信支付功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12

最新評(píng)論