在线文档教程

Uint8Array

Uint8Array

Uint8Array类型数组表示的8位无符号整数数组。内容被初始化为0。一旦建立,您可以使用对象的方法或使用标准数组索引语法(即使用括号表示法)引用数组中的元素。

语法

new Uint8Array( // new in ES2017 new Uint8Array(length new Uint8Array(typedArray new Uint8Array(object new Uint8Array(buffer [, byteOffset [, length]]

有关构造函数语法和参数的更多信息,请参阅TypedArray

属性

Uint8Array.BYTES_PER_ELEMENT返回元素大小的数字值。在Uint8Array.Uint8Array.lengthStatic长度属性的情况下,其值为0.对于实际长度(元素数量),请参阅Uint8Array.prototype.length

方法

Uint8Array.from()Uint8Array从类似数组或类的对象中创建一个新的对象。另见Array.from()。用可变数量的参数Uint8Array.of()创建一个新Uint8Array的。另见Array.of()

Uint8Array prototype

所有Uint8Array对象都从中继承%TypedArray%.prototype

属性

Uint8Array.prototype.constructor返回创建实例原型的函数。这是Uint8Array默认的构造函数。

方法

Uint8Array.prototype.copyWithin()复制数组中的一系列数组元素。另见Array.prototype.copyWithin()

示例

不同的方式来创建一个Uint8Array

// From a length var uint8 = new Uint8Array(2 uint8[0] = 42; console.log(uint8[0] // 42 console.log(uint8.length // 2 console.log(uint8.BYTES_PER_ELEMENT // 1 // From an array var arr = new Uint8Array([21,31] console.log(arr[1] // 31 // From another TypedArray var x = new Uint8Array([21, 31] var y = new Uint8Array(x console.log(y[0] // 21 // From an ArrayBuffer var buffer = new ArrayBuffer(8 var z = new Uint8Array(buffer, 1, 4 // From an iterable var iterable = function*(){ yield* [1,2,3]; }( var uint8 = new Uint8Array(iterable // Uint8Array[1, 2, 3]

规范

SpecificationStatusComment
Typed Array SpecificationObsoleteSuperseded by ECMAScript 6.
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'TypedArray constructors' in that specification.StandardInitial definition in an ECMA standard. Specified that new is required.
ECMAScript Latest Draft (ECMA-262)The definition of 'TypedArray constructors' in that specification.DraftECMAScript 2017 changed the Uint8Array constructor to use the ToIndex operation and allows constructors with no arguments.

浏览器兼容性

FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support7.0(Yes)4.0 (2)1011.65.1
new is required??44 (44)???
Iterable in constructor??52 (52)???
Constructor without arguments??55 (55)???

FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support4.0(Yes)(Yes)4.0 (2)1011.64.2
new is required???44.0 (44)???
Iterable in constructor???52.0 (52)???
Constructor without arguments???55.0 (55)???