is-an
v0.7.0
Published
Robust and comprehensive type checking library for node and the browser
Downloads
4
Readme
is-an
Robust and comprehensive type checking library for node and the browser
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
isAn(value) -> String
Returns the basic type representation of value
.
console.log(isAn(1));
// Number
console.log(isAn({}));
// Object
isAn(typeName : String, { returnChecker: true }) -> Function
Returns the type checking function for typeName
.
console.log(isAn.Number.Literal == isAn('Number.Literal', { returnChecker: true }));
// true
isAn(value, typeName : String) -> Boolean
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
isAn.<typeName>(value) -> Boolean
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
isAn.<typeName>.typeName : String
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.
isAn.Undefined(x)
isAn.Null(x)
isAn.Boolean(x)
isAn.Boolean.Literal(x)
isAn.Boolean.Object(x)
isAn.Number(x)
isAn.Number.Literal(x)
isAn.Number.Literal.NaN(x)
isAn.Number.Literal.Finite(x)
isAn.Number.Literal.Infinite(x)
isAn.Number.Literal.Integer(x)
isAn.Number.Object(x)
isAn.Number.Object.NaN(x)
isAn.Number.Object.Finite(x)
isAn.Number.Object.Infinite(x)
isAn.Number.Object.Integer(x)
isAn.Number.NaN(x)
isAn.Number.Finite(x)
isAn.Number.Infinite(x)
isAn.Number.Integer(x)
isAn.String(x)
isAn.String.Literal(x)
isAn.String.Object(x)
isAn.Array(x)
isAn.Object(x)
isAn.Object.Literal(x)
isAn.Function(x)
isAn.Arguments(x)
isAn.Date(x)
isAn.RegExp(x)
isAn.Error(x)
isAn.Math(x)
isAn.Int8Array(x)
isAn.Uint8ClampedArray(x)
isAn.Uint8Array(x)
isAn.Int16Array(x)
isAn.Uint16Array(x)
isAn.Int32Array(x)
isAn.Uint32Array(x)
isAn.Float32Array(x)
isAn.Float64Array(x)