目录

TypedArray

TypedArray对象表示底层的二进制数据缓存区的类数组视图,没有名为TypedArray的全局属性,也不存在直接可见的TypedArray构造器。 TypedArray仅是一个内部对象,以下全局对象皆由其继承而来

 

继承层次

Object.prototype
 Function.prototype
  TypedArray

构造函数

ES6定义TypeArray构造器作为所有的类型化数组构造器(Int8Array,Int16Array等)的原型.该构造器不会直接暴露:没有全局的%TypedArray%和TypeArray属性.只能通过使用类似Object.getPrototypeOf(Int8Array.prototype)的方式进行访问.所有的类型化数组构造器(Int8Array,Int16Array等)都会继承TypeArray构造器的通用属性和方法.此外,所有的类型化数组原型(Int8Array.prototype,Int16Array.prototype等)的原型都以TypeArray.prototype作为原型.

TypedArray构造器自身不是特别有用.调用或在一个表达式中使用它都会抛出一个TypeError异常,除非在支持通过继承创建对象的JS引擎下运行.但直到现在还没有这样的JS引擎出现,因此TypeArray仅仅是对所有的类型化类构造器(Int8Array,Int16Array等)的方法和属性进行polyfill的时候比较有用.

语法

new TypedArray(length); 
new TypedArray(typedArray); 
new TypedArray(object); 
new TypedArray(buffer [, byteOffset [, length]]); 
 
以下皆是 TypedArray() : 

Int8Array(); 
Uint8Array(); 
Uint8ClampedArray();
Int16Array(); 
Uint16Array();
Int32Array(); 
Uint32Array(); 
Float32Array(); 
Float64Array();

参数

属性

版本名称语法说明
ES6BYTES_PER_ELEMENTTypedArray.BYTES_PER_ELEMENT返回不同类型的数组对象的元素大小的数字值。
ES6lengthTypedArray.length表示 Promise 构造器的原型。
ES6nameTypedArray.name返回构造器的名称,例如“Int8Array”.
ES6TypedArray[Symbol.species]用于创建派生对象的构造函数函数.
ES6TypedArray.prototypeTypedArray.prototypeTypedArray的原型.

方法列表

版本名称语法说明
ES6fromTypedArray.from()使用类数组(array-like)或迭代对象创建一个新的类型化数组.参见 Array.from().
ES6ofTypedArray.of()通过可变数量的参数创建新的类型化数组.参见 Array.of()。

TypedArray.prototype

属性列表

版本名称语法说明
ES6constructortypedarrayObject.constructor使用类数组(array-like)或迭代对象创建一个新的类型化数组.参见 Array.from().
ES6buffertypedarrayObject.buffer 返回被格式化数组引用的ArrayBuffer. 创建时已被固化,因此是只读的.
ES6byteLengthtypedarrayObject.byteLength返回从ArrayBuffer读取的字节长度. 创建时已被固化,因此是只读的.
ES6byteOffsettypedarrayObject.byteOffset返回从ArrayBuffer读取时的字节偏移量.创建时已被固化,因此是只读的.
ES6lengthtypedarrayObject.length

方法列表

版本名称语法说明
ES6copyWithintypedarrayObject.copyWithin(target, start[, end = this.length])浅拷贝数组的部分元素到同一数组的不同位置,且不改变数组的大小,返回该数组。
ES6entriestypedarrayObject.entries()返回一个 Array Iterator 对象,该对象包含数组中每一个索引的键值对。
ES6everytypedarrayObject.every(callback[, thisObject])测试数组的所有元素是否都通过了指定函数的测试。
ES6filltypedarrayObject.fill(value[, start = 0[, end = this.length]])将一个数组中指定区间的所有元素的值, 都替换成或者说填充成为某个固定的值。
ES6filtertypedarrayObject.filter(callback[, thisObject])使用指定的函数测试所有元素,并创建一个包含所有通过测试的元素的新数组
ES6findtypedarrayObject.find(callback[, thisObject])返回一个满足提供的函数的测试的元素,若是没有满足的元素则返回undefined 。
ES6findIndextypedarrayObject.findIndex(callback[, thisObject])查找数组中某指定元素的索引, 如果找不到指定的元素, 则返回 -1。
ES6forEachtypedarrayObject.forEach(callback[, thisObject])对数组的每个元素执行一次提供的函数(回调函数)。
ES6indexOftypedarrayObject.indexOf(searchElement[, fromIndex = 0])返回数组中第一个等于指定值得元素的索引,如果找不到则返回-1
ES6jointypedarrayObject.join([separator = ',']);将数组中的所有元素连接成一个字符串. 参见 Array.prototype.join()。
ES6keystypedarrayObject.keys()返回一个新的包含数组索引的数组迭代器。
ES6lastIndexOftypedarrayObject.lastIndexOf(searchElement[, fromIndex = typedarrayObject.length])返回数组中最后一个等于指定值得元素的索引,如果找不到则返回-1。
ES6maptypedarrayObject.map(callback[, thisObject])创建一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组
ES6reducetypedarrayObject.reduce(callback[, initialValue])接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值。
ES6reduceRighttypedarrayObject.reduceRight(callback[, initialValue])接受一个函数作为累加器(accumulator),让每个值(从右到左,亦即从尾到头)缩减为一个值.(与 reduce() 的执行方向相反)。
ES6reversetypedarrayObject.reverse()颠倒数组中元素的位置。第一个元素会成为最后一个,最后一个会成为第一个
ES6settypedarrayObject.set(typedarrayObject [,offset])读取一个指定数组中的元素保存到格式化数组中。
ES6slicetypedarrayObject.slice([begin[, end]])浅复制(shallow copy)数组的一部分到一个新的数组,并返回这个新数组。
ES6sometypedarrayObject.some(callback[, thisObject])数组中只要有一个元素满足提供的测试函数的测试就返回true,否则返回false。
ES6sorttypedarrayObject.sort([compareFunction])对数组进行排序,并返回原数组(是改变原数组)
ES6subarraytypedarrayObject.subarray([begin [,end]])返回给定的起始和结束索引之间的元素组成的新的类型化数组
ES6valuestypedarrayObject.values()返回有数组中的元素组成的新的数组迭代对象。
ES6toLocaleStringtypedarrayObject.toLocaleString([locales [, options]]);返回一个将数组中的每个元素本地化后组成的字符串。
ES6toStringtypedarrayObject.toString()返回一个由数组中的每个元素字符串化后组成的字符串。
ES6[@@iterator]typedarrayObject[Symbol.iterator]()返回一个包含数组中每个元素的新的数组迭代对象

TypedArray实例

继承层次

Object.prototype
 Array.prototype
  TypedArray实例