00001 var baseGetTag = require('./_baseGetTag'), 00002 isLength = require('./isLength'), 00003 isObjectLike = require('./isObjectLike'); 00004 00006 var argsTag = '[object Arguments]', 00007 arrayTag = '[object Array]', 00008 boolTag = '[object Boolean]', 00009 dateTag = '[object Date]', 00010 errorTag = '[object Error]', 00011 funcTag = '[object Function]', 00012 mapTag = '[object Map]', 00013 numberTag = '[object Number]', 00014 objectTag = '[object Object]', 00015 regexpTag = '[object RegExp]', 00016 setTag = '[object Set]', 00017 stringTag = '[object String]', 00018 weakMapTag = '[object WeakMap]'; 00019 00020 var arrayBufferTag = '[object ArrayBuffer]', 00021 dataViewTag = '[object DataView]', 00022 float32Tag = '[object Float32Array]', 00023 float64Tag = '[object Float64Array]', 00024 int8Tag = '[object Int8Array]', 00025 int16Tag = '[object Int16Array]', 00026 int32Tag = '[object Int32Array]', 00027 uint8Tag = '[object Uint8Array]', 00028 uint8ClampedTag = '[object Uint8ClampedArray]', 00029 uint16Tag = '[object Uint16Array]', 00030 uint32Tag = '[object Uint32Array]'; 00031 00033 var typedArrayTags = {}; 00034 typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = 00035 typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = 00036 typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = 00037 typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = 00038 typedArrayTags[uint32Tag] = true; 00039 typedArrayTags[argsTag] = typedArrayTags[arrayTag] = 00040 typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = 00041 typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = 00042 typedArrayTags[errorTag] = typedArrayTags[funcTag] = 00043 typedArrayTags[mapTag] = typedArrayTags[numberTag] = 00044 typedArrayTags[objectTag] = typedArrayTags[regexpTag] = 00045 typedArrayTags[setTag] = typedArrayTags[stringTag] = 00046 typedArrayTags[weakMapTag] = false; 00047 00055 function baseIsTypedArray(value) { 00056 return isObjectLike(value) && 00057 isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; 00058 } 00059 00060 module.exports = baseIsTypedArray;