validate.io-typed-array-like
Version:
Validates if a value is typed-array-like.
139 lines (88 loc) • 3.5 kB
Markdown
typed-array-like
===
[![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coverage Status][coveralls-image]][coveralls-url] [![Dependencies][dependencies-image]][dependencies-url]
> Validates if a value is [typed-array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays)-like.
``` bash
$ npm install validate.io-typed-array-like
```
For use in the browser, use [browserify](https://github.com/substack/node-browserify).
``` javascript
var isTypedArrayLike = require( 'validate.io-typed-array-like' );
```
Validates if a value is [`typed-array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays)-like.
``` javascript
var bool;
bool = isTypedArrayLike( new Int16Array() );
// returns true
bool = isTypedArrayLike({
'length': 10,
'byteOffset': 0,
'byteLength': 10,
'BYTES_PER_ELEMENT': 4
});
// returns true
```
``` javascript
var isTypedArrayLike = require( 'validate.io-typed-array-like' );
var arr = {
'BYTES_PER_ELEMENT': 8,
'length': 10,
'byteOffset': 0,
'byteLength': 10
};
console.log( isTypedArrayLike( arr ) );
// returns true
console.log( isTypedArrayLike( new Int8Array( 4 ) ) );
// returns true
console.log( isTypedArrayLike( [] ) );
// returns false
console.log( isTypedArrayLike( {} ) );
// returns false
console.log( isTypedArrayLike( null ) );
// returns false
console.log( isTypedArrayLike( 'beep' ) );
// returns false
console.log( isTypedArrayLike( function foo( a, b ) {} ) );
// returns false
```
To run the example code from the top-level application directory,
``` bash
$ node ./examples/index.js
```
Unit tests use the [Mocha](http://mochajs.org) test framework with [Chai](http://chaijs.com) assertions. To run the tests, execute the following command in the top-level application directory:
``` bash
$ make test
```
All new feature development should have corresponding unit tests to validate correct functionality.
This repository uses [Istanbul](https://github.com/gotwarlost/istanbul) as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
``` bash
$ make test-cov
```
Istanbul creates a `./reports/coverage` directory. To access an HTML version of the report,
``` bash
$ make view-cov
```
---
[ ](http://opensource.org/licenses/MIT).
Copyright © 2015-2016. Athan Reines.
[ ]: http://img.shields.io/npm/v/validate.io-typed-array-like.svg
[ ]: https://npmjs.org/package/validate.io-typed-array-like
[ ]: http://img.shields.io/travis/validate-io/typed-array-like/master.svg
[ ]: https://travis-ci.org/validate-io/typed-array-like
[ ]: https://img.shields.io/coveralls/validate-io/typed-array-like/master.svg
[ ]: https://coveralls.io/r/validate-io/typed-array-like?branch=master
[ ]: http://img.shields.io/david/validate-io/typed-array-like.svg
[ ]: https://david-dm.org/validate-io/typed-array-like
[ ]: http://img.shields.io/david/dev/validate-io/typed-array-like.svg
[ ]: https://david-dm.org/dev/validate-io/typed-array-like
[ ]: http://img.shields.io/github/issues/validate-io/typed-array-like.svg
[ ]: https://github.com/validate-io/typed-array-like/issues