Initial commit
[yaffs-website] / node_modules / is-typedarray / index.js
1 module.exports      = isTypedArray
2 isTypedArray.strict = isStrictTypedArray
3 isTypedArray.loose  = isLooseTypedArray
4
5 var toString = Object.prototype.toString
6 var names = {
7     '[object Int8Array]': true
8   , '[object Int16Array]': true
9   , '[object Int32Array]': true
10   , '[object Uint8Array]': true
11   , '[object Uint8ClampedArray]': true
12   , '[object Uint16Array]': true
13   , '[object Uint32Array]': true
14   , '[object Float32Array]': true
15   , '[object Float64Array]': true
16 }
17
18 function isTypedArray(arr) {
19   return (
20        isStrictTypedArray(arr)
21     || isLooseTypedArray(arr)
22   )
23 }
24
25 function isStrictTypedArray(arr) {
26   return (
27        arr instanceof Int8Array
28     || arr instanceof Int16Array
29     || arr instanceof Int32Array
30     || arr instanceof Uint8Array
31     || arr instanceof Uint8ClampedArray
32     || arr instanceof Uint16Array
33     || arr instanceof Uint32Array
34     || arr instanceof Float32Array
35     || arr instanceof Float64Array
36   )
37 }
38
39 function isLooseTypedArray(arr) {
40   return names[toString.call(arr)]
41 }