Package Exports
- typechecker
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 (typechecker) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
TypeChecker
Utilities to get and check variable types (isString, isPlainObject, isRegExp, etc)
Why?
Why should I use this instead of say instanceof?
Under certain circumstances instanceof may not return the correct results. This occurs with node's vm module especially, and circumstances where an object's prototype has been dereferenced from the original. As such, for basic == and === checks (like a === null), you're fine not using this, but for checks when you would have done instanceof (like err instanceof Error), you should try to use this instead. Plus things like isEmpty, isEmptyObject and isPlainObject are darn useful!
Install
NPM
- Use:
require('typechecker') - Install:
npm install --save typechecker
Browserify
- Use:
require('typechecker') - Install:
npm install --save typechecker - CDN URL:
//wzrd.in/bundle/typechecker@2.1.0
Ender
- Use:
require('typechecker') - Install:
ender add typechecker
Usage
Example
require('typechecker').isRegExp(/^a/) // returns trueMethods
Helpers:
getObjectType- returns the object string of the value, e.g. when passed/^a/it'll return"[object RegExp]"getType- returns lower case string of the type, e.g. when passed/^a/it'll return"regex"
Values:
isPlainObject- returnstrueif the value doesn't have a custom prototypeisEmpty- returnstrueif the value isnullorundefinedisEmptyObject- returnstrueif the object has no keys that are its own
Types:
isError- returnstrueif the value is an error, otherwisefalseisDate- returnstrueif the value is a date, otherwisefalseisArguments- returnstrueif the value is function arguments, otherwisefalseisFunction- returnstrueif the value is a function, otherwisefalseisRegExp- returnstrueif the value is a regular expression instance, otherwisefalseisArray- returnstrueif the value is an array, otherwisefalseisNumber- returnstrueif the value is a number ("2"is a string), otherwisefalseisString- returnstrueif the value is a string, otherwisefalseisBoolean- returnstrueif the value is a boolean, otherwisefalseisNull- returnstrueif the value is null, otherwisefalseisUndefined- returnstrueif the value is undefined, otherwisefalse
History
Discover the change history by heading on over to the HISTORY.md file.
Contribute
Discover how you can contribute by heading on over to the CONTRIBUTING.md file.
Backers
Maintainers
These amazing people are maintaining this project:
- Benjamin Lupton b@lupton.cc (https://github.com/balupton)
Sponsors
No sponsors yet! Will you be the first?
Contributors
These amazing people have contributed code to this project:
- Benjamin Lupton b@lupton.cc — view contributions
- joegesualdo — view contributions
- sfrdmn — view contributions
License
Unless stated otherwise all works are:
- Copyright © 2013+ Bevry Pty Ltd us@bevry.me (http://bevry.me)
- Copyright © 2011-2012 Benjamin Lupton b@lupton.cc (http://balupton.com)
and licensed under:
- The incredibly permissive MIT License