which-istypedarray
v1.1.0
Published
check if [a] an array or [b] is an typed array or [c] an buffer array or [d] specific type using the package
Downloads
36
Maintainers
Keywords
Readme
which-istypedarray
check if [a]
an array
or [b]
is an typed array
or [c]
an buffer array
or [d]
specific type
using the package and browser compatible
- check if
[a]
anarray
or[b]
is antyped array
or[c]
anbuffer array
or[d]
specifictype
usingisTypedArray
- check if a buffer is
typed array
pattern like using theisTypedArrayUsingPattern
- check if a an object provided is
buffer
usingisBufferLike
- check if a environment supports
supportsArrayBuffer
,supportsDataView
,nativeIsArrayBufferView
, - check if a object is inbuilt object or is of specific type like
String
,Number
,Date
,RegExp
,Error
,Symbol
,ArrayBuffer
,Function
,DataView
,Object
usingtoString
method - convert to
BufferView
usingtoBufferView
- get predefined key/ property value of an object using the
getShallowProperty
Demos can be found in demos folder
USAGE
const {
isTypedArray,
isBufferLike,
supportsArrayBuffer,
toString,
supportsDataView,
nativeIsArrayBufferView,
isTypedArrayUsingPattern,
toBufferView,
getShallowProperty,
tagTester
} = require("which-istypedarray");
// isTypedArray
console.log('isTypedArray: ', isTypedArray(new Array('stress'))); // false
console.log('isTypedArray: ', isTypedArray(new String('stress'))); // false
console.log('isTypedArray: ', isTypedArray(new Number('stress'))); // false
// isTypedArray
console.log('isTypedArray: ', isTypedArray(['test', 'tester'])); // false
console.log('isTypedArray: ', isTypedArray(new Int16Array([1, 2, 3, 4]))); // true
// isBufferLike
console.log('isBufferLike: ', isBufferLike(['test', 'tester'])); // false
console.log('isBufferLike: ', isBufferLike(Buffer.from(['test', 'tester']))); // true
// isTypedArrayUsingPattern
console.log('isTypedArrayUsingPattern: ', isTypedArrayUsingPattern(new Int16Array([1, 2, 3, 4]))); // true
// supportsArrayBuffer
// supportsDataView
// nativeIsArrayBufferView
console.log("supportsArrayBuffer", supportsArrayBuffer()) // true
console.log("supportsDataView", supportsDataView()) // true
console.log("nativeIsArrayBufferView", nativeIsArrayBufferView()) // true
// tagTester
var isString = tagTester('String');
var isNumber = tagTester('Number');
var isDate = tagTester('Date');
var isRegExp = tagTester('RegExp');
var isError = tagTester('Error');
var isSymbol = tagTester('Symbol');
var isArrayBuffer = tagTester('ArrayBuffer');
var isFunction = tagTester('Function');
var isDataView = tagTester('DataView');
var hasObjectTag = tagTester('Object');
let obj = "string";
isString(obj) // true
obj = 10;
isNumber(obj) // true
obj = new Date();
isDate(obj) // true
obj = new RegExp(/^a/g);
isRegExp(obj) // true
obj = new Error("Test");
isError(obj) // true
obj = Symbol("a");
isSymbol(obj) // true
obj = new ArrayBuffer();
isArrayBuffer(obj) // true
obj = () => {};
isFunction(obj) // true
obj = [1, 2, 3];
isDataView(obj) // false
obj = {}
hasObjectTag(obj) // false
// getShallowProperty
let getMykeyValue = getShallowProperty("mykey")
obj = { "mykey" : 10 }
console.log("getMykeyValue: ", getMykeyValue(obj)) // 10
CREDITS:
Parts of the code has been taken from Underscorejs but bettered for ease of usability, simpler usage, and browser compatible