當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。