UNPKG

ensure-error

Version:

Ensures a value is a valid error by making it one if not

46 lines (28 loc) 910 B
# ensure-error > Ensures a value is a valid error by making it one if not Pass it any value and you're are guaranteed to get back an `Error` with `name`, `message`, and `stack` properties. Can be useful when you don't control all the places an error can be thrown or rejected. A user could for example throw a string or an error without a `stack` property. ## Install ``` $ npm install ensure-error ``` ## Usage ```js import ensureError from 'ensure-error'; const error = new TypeError('🦄'); error.name = ''; console.log(error.name); //=> '' console.log(ensureError(error).name); //=> 'TypeError' ``` ```js import ensureError from 'ensure-error'; console.log(ensureError(10)); //=> [NonError: 10] ``` ## API ### ensureError(input) If `input` is an `Error`, any missing `Error` properties will be added. If it's not an `Error`, `input` is converted to an `Error`. #### input Type: `unknown`