Skip to content

Robust and comprehensive type checking library for node and the browser

License

Notifications You must be signed in to change notification settings

WHenderson/is-an

Repository files navigation

is-an

Robust and comprehensive type checking library for node and the browser

Build Status Coverage Status

Installation

Node

npm install is-an

Web

bower install is-an

Usage

node

var isAn = require('is-an');

console.log('is an array?', isAn.Array([]));
// is an array? true

web (global)

<html>
    <head>
        <script type="text/javascript" src="is-an.web.min.js"></script>
    </head>
    <body>
        <script>
            console.log('is an array?', isAn.Array([]));
            // is an array? true
        </script>
    </body>
</html>

web (amd)

require.config({
  paths: {
      "is-an": "is-an.web.min.js"
  }
});
require(['is-an'], function (isAn) {
  console.log('is an array?', isAn.Array([]));
  // is an array? true
});

API

Returns the basic type representation of value.

console.log(isAn(1));
// Number

console.log(isAn({}));
// Object

Returns the type checking function for typeName.

console.log(isAn.Number.Literal == isAn('Number.Literal', { returnChecker: true }));
// true

Returns true iff value is of type typeName. Identical to the below methods.

console.log(isAn(1, 'Number.Literal'));
// true

console.log(isAn(1, 'Object'));
// false

console.log(isAn(1, 'unknown'));
// undefined

Returns true iff value is of the type typeName.

console.log(isAn.Number(1));
// true

console.log(isAn.Number.Literal(new Number(1)));
// false

console.log(isAn.Object(1));
// false

A simple property which contains the distinguished type name of the function.

console.log(isAn.Number.Integer.typeName);
// Number.Integer

console.log(isAn.Object.typeName);
// Object

Complete list of supported type checking methods

The tables linked below display the results of running all defined inputs against all type checks, with irrelevent results filtered. Type checks not shown return false for the given input.

See the complete results table for a combined listing.

About

Robust and comprehensive type checking library for node and the browser

Resources

License

Stars

Watchers

Forks

Packages

No packages published