Package Exports
- @neumatter/is
- @neumatter/is/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@neumatter/is) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
is/NeuType
Tool for better type checking in javascript. You can also create your own type for stricter type enforcement.
Table of Contents
Install
npm i @neumatter/is
Usage
Default:
// CJS require
const is = require('@neumatter/is')
const { NeuType } = require('@neumatter/is')
// ESM import
import is, { NeuType } from '@neumatter/is'
is.array([]) // true
is.emptyArray([]) // true
is.falseType([]) // true
is.object({}) // true
is.emptyObject({}) // true
is.string('') // true
is.emptyString('') // true
is.falseType('') // true
is.boolean(false) // true
is.number(NaN) // true
is.NaN(NaN) // true
is.infinite(Infinite) // true
is.null(null) // true
is.falseType(null) // true
is.date(new Date()) // true
is.undefined(undefined) // true
is.falseType(undefined) // true
is.function(NeuType) // true
is.instance(new NeuType(), NeuType) // true
is.symbol(Symbol) // true
Generating Types:
// CJS require
const { NeuType } = require('@neumatter/is')
// ESM import
import { NeuType } from '@neumatter/is'
const arrType = new NeuType([{ hello: 'world' }])
arrType.tag // Array<Object>
arrType.is('Array') // true
arrType.instance(Array) // true
arrType.equals([{ random: 'obj' }]) // true | type must match Array<Object>
// Type From Class
class SomeClass {}
const someClassObj = new SomeClass()
const classObjType = new NeuType(someClassObj)
classObjType.tag // Object[SomeClass]
classObjType.is('Object') // true
classObjType.is('SomeClass') // true
classObjType.is(SomeClass) // true
classObjType.equals(SomeClass) // false
classObjType.new() // returns new instance of SomeClass
`${classObjType}` // Object[SomeClass]
'' + classObjType // Object[SomeClass]
console.log(classObjType) // NeuType [Object[SomeClass]] {}
is.array([]) // true
is.emptyArray([]) // true
is.falseType([]) // true
is.object({}) // true
is.emptyObject({}) // true
is.string('') // true
is.emptyString('') // true
is.falseType('') // true
is.boolean(false) // true
is.number(NaN) // true
is.NaN(NaN) // true
is.infinite(Infinite) // true
is.null(null) // true
is.falseType(null) // true
is.date(new Date()) // true
is.undefined(undefined) // true
is.falseType(undefined) // true
is.function(NeuType) // true
is.instance(new NeuType(), NeuType) // true
is.symbol(Symbol) // true