Make your own error types!
instanceof
supporterror.name
& error.stack
supporteval()
)Installation of the npm package:
> npm install --save make-error
Then require the package:
var makeError = require('make-error');
You can directly use the build provided at unpkg.com:
<script src="https://unpkg.com/make-error@1/dist/make-error.js"></script>
var CustomError = makeError('CustomError') // Parameters are forwarded to the super class (here Error). throw new CustomError('a message')
function CustomError (customValue) { CustomError.super.call(this, 'custom error message') this.customValue = customValue } makeError(CustomError) // Feel free to extend the prototype. CustomError.prototype.myMethod = function CustomError$myMethod () { console.log('CustomError.myMethod (%s, %s)', this.code, this.message) } //----- try { throw new CustomError(42) } catch (error) { error.myMethod() }
var SpecializedError = makeError('SpecializedError', CustomError); throw new SpecializedError(42);
Best for ES2015+.
import {BaseError} from 'make-error' class CustomError extends BaseError { constructor () { super('custom error message') } }
Contributions are very welcomed, either on the documentation or on the code.
You may:
ISC © Julien Fontanet