except-x
v1.1.4
Published
Utility functions and prototype extensions for JavaScript Error object
Downloads
6
Readme
except-x.js
Utility functions and prototype extensions for JavaScript Error object
API
// returns new Error object with a custom stackframe object containing
// [description] argument appended to custom stack trace property [stackFrameArray]
Error.prototype.describe(description);
Example Usage
require("except-x");
const stringX = require("string-x");
function throw_1() {
throw new Error("error-1");
}
function throw_2() {
try {
throw_1()
}
catch (e) {
throw e.describe(`error-2`);
}
}
function throw_3() {
try {
throw_2()
}
catch (e) {
throw e.describe(`error-3`);
}
}
try {
throw_3()
}
catch (e) {
console.log(e.stackFrameArray.map(x => stringX.formatJSON(JSON.stringify(x))).join("\n\n"));
}
Output:
fileName: "...test.js",
line: 20,
col: 9,
funcName: "throw_3",
desc: "error-3"
}
{
fileName: "...test.js",
line: 12,
col: 9,
funcName: "throw_2",
desc: "error-2"
}
{
fileName: "...test.js",
line: 7,
col: 11,
desc: "error-1"
}