Package Exports
- utils-type
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 (utils-type) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
utils-type 

documentation - install - todo
simple
var type = require('utils-type');
type( 42 ); // -> { number: 42 }
type( NaN ); // -> { nan: true }
type( null ); // -> { null: true }
type( true ); // -> { boolean: true }
type( false ); // -> { boolean: true }
type( Infinity ); // -> { infinity: true }
type( undefined ); // -> { undefined: true }
type( 'a string'); // -> { string: 'a string' }
type( /a regex/ ); // -> { object: true, regexp: /a regex/ } }
type( function(){ } ); // -> { object: true, function: [Function] }
type({ type : 'toy' }); // -> { object: { type: 'toy' } }
type( new Date() ); // -> { object: true, date: Mon Sep 08 2014 19:10:32 GMT+0200 (CEST) }
type( new Error() ); // -> { object: true, error: [Error] }
// and more!
type( new Stream() );
// -> { object: true, eventemitter: true, stream: { domain: null, _events: {}, _maxListeners: 10 } }
type( new EventEmitter() );
// -> { object: true, eventemitter: { domain: null, _events: {}, _maxListeners: 10 } }composable
The function returns an object. The type mached by what type returns itself. That is:
type(1).number // -> 1 (that is truthy)
type([1,2,3]).array // -> [1,2,3] (truthy)
type(type([1,2,3]).array[1]).number // -> 1 (truthy)maintain the type
Falsy values are made true when it makes sense based on their use-case
var arr = [false, 0, NaN, ''];
type(type(arr).array[0]).boolean // -> true
type(type(arr).array[1]).number // -> 0
type(type(arr).array[2]).number // -> undefined
type(type(arr).array[3]).string // -> ' 'NaNis not a numberfalseis a boolean, returning it will be misleading0is a number yes, but if is changed to true you can't add to it after the function returnsthe empty stringis changed to an space so is truthy and operations can be made on it
install
With npm
$ npm install utils-typetest
$ npm testtodo
- Include browser tests