compute-dtype
v1.0.0
Published
Determines the underlying data type of an input value.
Downloads
10,408
Maintainers
Readme
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.