当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js Error.captureStackTrace(targetObject[, constructorOpt])用法及代码示例


Error.captureStackTrace(targetObject[, constructorOpt])

targetObject 上创建一个 .stack 属性,访问该属性时会返回一个字符串,该字符串表示代码中调用 Error.captureStackTrace() 的位置。

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

跟踪的第一行将以 ${myObject.name}: ${myObject.message} 为前缀。

可选的 constructorOpt 参数接受一个函数。如果给定,所有高于 constructorOpt 的帧,包括 constructorOpt ,都将从生成的堆栈跟踪中省略。

constructorOpt 参数对于向用户隐藏错误生成的实现细节很有用。例如:

function MyError() {
  Error.captureStackTrace(this, MyError);
}

// Without passing MyError to captureStackTrace, the MyError
// frame would show up in the .stack property. By passing
// the constructor, we omit that frame, and retain all frames below it.
new MyError().stack;

相关用法


注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 Error.captureStackTrace(targetObject[, constructorOpt])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。