• 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.