No Description

isTypedArray.js 726B

123456789101112131415
  1. import { supportsArrayBuffer, nativeIsView, toString } from './_setup.js';
  2. import isDataView from './isDataView.js';
  3. import constant from './constant.js';
  4. import isBufferLike from './_isBufferLike.js';
  5. // Is a given value a typed array?
  6. var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;
  7. function isTypedArray(obj) {
  8. // `ArrayBuffer.isView` is the most future-proof, so use it when available.
  9. // Otherwise, fall back on the above regular expression.
  10. return nativeIsView ? (nativeIsView(obj) && !isDataView(obj)) :
  11. isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));
  12. }
  13. export default supportsArrayBuffer ? isTypedArray : constant(false);