Error.prototype.cause
The cause
data property of an Error
instance indicates the specific original cause of the error.
It is used when catching and re-throwing an error with a more-specific or useful error message in order to still have access to the original error.
Value
The value that was passed to the Error
constructor in the options.cause
argument. It may not be present.
Description
The value of cause
can be of any type. You should not make assumptions that the error you caught has an Error
as its cause
, in the same way that you cannot be sure the variable bound in the catch
statement is an Error
either. The "Providing structured data as the error cause" example below shows a case where a non-error is deliberately provided as the cause.