compute-dtype v1.0.0
dtype
Determines the underlying data type of an input value.
Installation
$ npm install compute-dtype
For use in the browser, use browserify.
Usage
var dtype = require( 'compute-dtype' );
dtype( value )
Determines the underlying data type of an input value
.
var dt = dtype( Int16Array( 10 ) );
// returns 'int16'
dt = dtype( true );
// returns 'boolean'
The following input values are supported:
Value | Data Type |
---|---|
undefined | undefined |
null | null |
true|false | boolean |
<number> | number |
<string> | string |
<symbol> | symbol |
<function> | function |
Buffer | binary |
ArrayBuffer | binary |
Int8Array | int8 |
Uint8Array | uint8 |
Uint8ClampedArray | uint8_clamped |
Int16Array | int16 |
Uint16Array | uint16 |
Int32Array | int32 |
Uint32Array | uint32 |
Float32Array | float32 |
Float64Array | float64 |
Array | generic |
Other | generic |
Note: values created using String
, Boolean
, and Number
constructors are Objects
and considered generic
.
Examples
var dtype = require( 'compute-dtype' );
console.log( dtype( null ) );
// returns 'null'
console.log( dtype( undefined ) );
// returns 'undefined'
console.log( dtype( true ) );
// returns 'boolean'
console.log( dtype( Math.PI ) );
// returns 'number'
console.log( dtype( 'beep' ) );
// returns 'string'
console.log( dtype( function beep(){} ) );
// returns 'function'
console.log( dtype( new Int8Array( 10 ) ) );
// returns 'int8'
console.log( dtype( new Float64Array( 20 ) ) );
// returns 'float64'
console.log( dtype( new Buffer( 'woot' ) ) );
// returns 'binary'
console.log( dtype( [] ) );
// returns 'generic'
console.log( dtype( {} ) );
// returns 'generic'
console.log( dtype( new String( 'beep' ) ) );
// returns 'generic'
console.log( dtype( new Boolean( true ) ) );
// returns 'generic'
console.log( dtype( new Number( 5 ) ) );
// returns 'generic'
To run the example code from the top-level application directory,
$ node ./examples/index.js
Tests
Unit
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
Test Coverage
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
License
Copyright
Copyright © 2015. The Compute.io Authors.