• Node.js Video Tutorials

NodeJS - console.trace() 方法



Node.js 的 console.trace() 方法是 Console 方法的內建方法。

此方法將堆疊“跟蹤”列印到程式碼的當前位置,後跟stderr 上新行中的訊息和替換值。它顯示了呼叫此特定函式的程式碼行,以及之前呼叫的所有其他函式,包括它們的任何引數和返回值。此方法與 Node.js 的console.error() 方法非常相似。

現在,讓我們深入瞭解 node.js 的console.trace() 方法的語法和用法。

語法

以下是Node.js console.trace() 方法的語法:

console.trace(message, …args);

引數

此方法僅接受兩個引數。下面將討論這些引數。

  • 第一個引數message 將列印到 stderr。

  • 第二個引數args 是一個可選引數,我們可以在訊息中傳遞替換值,這些值將傳遞給message

返回值

此方法將堆疊與字串“跟蹤”一起列印到程式碼的當前位置,後跟stderr 上新行中的訊息和替換值。

示例

在下面的示例中,我們呼叫 Node.js 的console.trace() 方法,不傳遞任何messageargs 引數。

console.trace();

輸出

正如我們在上面的輸出中看到的,trace() 方法將堆疊“跟蹤”列印到程式碼的當前位置。上面程式碼中程式碼的當前位置顯示為 1:9。這意味著console.trace() 從第一個 1 開始。

Trace
   at Object.<anonymous> (/home/cg/root/639ac5040c88c/main.js:1:71)
   at Module._compile (internal/modules/cjs/loader.js:702:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
   at Module.load (internal/modules/cjs/loader.js:612:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
   at Function.Module._load (internal/modules/cjs/loader.js:543:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
   at startup (internal/bootstrap/node.js:238:19)
   at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)

示例

在下面的示例中,我們使用其第一個引數(message)呼叫console.trace() 方法。

console.trace("This is an error!");

輸出

如果我們編譯並執行上面的程式碼,我們可以看到列印了字串“跟蹤”以及我們傳遞給方法的訊息。

Trace: This is an error!
   at Object.<anonymous> (/home/cg/root/639ac5040c88c/main.js:1:71)
   at Module._compile (internal/modules/cjs/loader.js:702:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
   at Module.load (internal/modules/cjs/loader.js:612:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
   at Function.Module._load (internal/modules/cjs/loader.js:543:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
   at startup (internal/bootstrap/node.js:238:19)
   at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)

示例

在下面的示例中,我們透過將兩個引數(message, …args)傳遞給方法來呼叫console.trace() 方法。

console.trace("This is an %s", 'error!');

輸出

正如我們在下面的輸出中看到的,傳遞給message 的替換值和列印的跟蹤堆疊。

Trace: This is an error!
   at Object.<anonymous> (/home/cg/root/639ac5040c88c/main.js:1:71)
   at Module._compile (internal/modules/cjs/loader.js:702:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
   at Module.load (internal/modules/cjs/loader.js:612:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
   at Function.Module._load (internal/modules/cjs/loader.js:543:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
   at startup (internal/bootstrap/node.js:238:19)
   at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)

示例

在下面的示例中,我們在函式內部呼叫console.trace() 方法。

function one(){
   console.trace("This is an error!");
}
one();

輸出

正如我們在下面的輸出中看到的,它將堆疊“跟蹤”列印到程式碼的當前位置,後跟訊息。

Trace: This is an error!
   at one (/home/cg/root/639ad99d5e18e/main.js:2:13)
   at Object.<anonymous> (/home/cg/root/639ad99d5e18e/main.js:4:1)
   at Module._compile (internal/modules/cjs/loader.js:702:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
   at Module.load (internal/modules/cjs/loader.js:612:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
   at Function.Module._load (internal/modules/cjs/loader.js:543:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
   at startup (internal/bootstrap/node.js:238:19)
   at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
nodejs_console_module.htm
廣告

© . All rights reserved.