'JSON.stringify not serializing Extended class props
I have an issue stringifying JavaScript extended class. First, I create MyError class as extension of Error and then try JSON.stringify on a new instance of MyError.
I expect to see .message property of the inherited (Error) class, but stringify only serializes direct attributes of MyError class. See code and output below.
Is there a way to tell stringify to include Error.message? Or an easy workaround to achieve this?
class MyError extends Error {
constructor(message, hint = "") {
super(message);
this.message = message; // attempt to trick .stringify
this.hint = hint;
}
}
console.log(JSON.stringify(new MyError("hello world");));
Actual output: {"hint":""}
Desired output: {"message":"hello world","hint":""}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
