Create native TypeError objects from an expected type and actual value

Downloads in past


1.0.34 years ago4 years agoMinified + gzip package size for type-error in KB


type-error v1.0.3
Create a native TypeError object by passing the expected type and the actual value.
Note: No validation is done; only type & value formatting.
const TypeError = require('type-error');

const foo = new Foo();
if (!(foo instanceof Bar)) {
  throw TypeError(Bar, foo); // 'Expected a Bar instance, got a Foo instance'

The first argument should be the constructor of the expected type, or a string describing the expected value. The second argument can be anything.
TypeError(Function, 1)      // 'Expected a function, got a number'
TypeError(Array, true)      // 'Expected an array, got true'
TypeError(Number, NaN)      // 'Expected a number, got NaN'
TypeError('null', {})       // 'Expected null, got an object'