1.2.21 • Published 2 days ago
@zitterorg/probable-octo v1.2.21
@zitterorg/probable-octo
Which kind of Typed Array is this JavaScript value? Works cross-realm, without instanceof
, and despite Symbol.toStringTag.
Example
var whichTypedArray = require('@zitterorg/probable-octo');
var assert = require('assert');
assert.equal(false, whichTypedArray(undefined));
assert.equal(false, whichTypedArray(null));
assert.equal(false, whichTypedArray(false));
assert.equal(false, whichTypedArray(true));
assert.equal(false, whichTypedArray([]));
assert.equal(false, whichTypedArray({}));
assert.equal(false, whichTypedArray(/a/g));
assert.equal(false, whichTypedArray(new RegExp('a', 'g')));
assert.equal(false, whichTypedArray(new Date()));
assert.equal(false, whichTypedArray(42));
assert.equal(false, whichTypedArray(NaN));
assert.equal(false, whichTypedArray(Infinity));
assert.equal(false, whichTypedArray(new Number(42)));
assert.equal(false, whichTypedArray('foo'));
assert.equal(false, whichTypedArray(Object('foo')));
assert.equal(false, whichTypedArray(function () {}));
assert.equal(false, whichTypedArray(function* () {}));
assert.equal(false, whichTypedArray(x => x * x));
assert.equal(false, whichTypedArray([]));
assert.equal('Int8Array', whichTypedArray(new Int8Array()));
assert.equal('Uint8Array', whichTypedArray(new Uint8Array()));
assert.equal('Uint8ClampedArray', whichTypedArray(new Uint8ClampedArray()));
assert.equal('Int16Array', whichTypedArray(new Int16Array()));
assert.equal('Uint16Array', whichTypedArray(new Uint16Array()));
assert.equal('Int32Array', whichTypedArray(new Int32Array()));
assert.equal('Uint32Array', whichTypedArray(new Uint32Array()));
assert.equal('Float32Array', whichTypedArray(new Float32Array()));
assert.equal('Float64Array', whichTypedArray(new Float64Array()));
assert.equal('BigInt64Array', whichTypedArray(new BigInt64Array()));
assert.equal('BigUint64Array', whichTypedArray(new BigUint64Array()));
Tests
Simply clone the repo, npm install
, and run npm test
1.2.18
5 days ago
1.2.19
4 days ago
1.2.20
3 days ago
1.2.21
2 days ago
1.2.17
6 days ago
1.2.16
7 days ago
1.2.15
8 days ago
1.2.14
9 days ago
1.2.13
10 days ago
1.2.12
11 days ago
1.2.11
12 days ago
1.2.10
13 days ago
1.2.9
14 days ago
1.2.8
15 days ago
1.2.7
16 days ago
1.2.6
17 days ago
1.2.5
18 days ago
1.1.5
19 days ago
1.1.4
20 days ago
1.1.3
21 days ago
1.1.2
22 days ago
1.1.1
23 days ago
1.1.0
24 days ago