Uint8Array
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Uint8Array
数组类型表示一个 8 位无符号整型数组,创建时内容被初始化为 0。创建完后,可以以对象的方式或使用数组下标索引的方式引用数组中的元素。
语法格式
new Uint8Array(); // ES2017 最新语法 new Uint8Array(length); // 创建初始化为 0 的,包含 length 个元素的无符号整型数组 new Uint8Array(typedArray); new Uint8Array(object); new Uint8Array(buffer [, byteOffset [, length]]);
构造语法和参数的更多信息请参见 TypedArray.
静态属性
Uint8Array.BYTES_PER_ELEMENT
-
返回数组中元素的字节数,Uint8Array 中返回 1 字节。
- Uint8Array.length
-
静态属性 length 一直为 0。想获知其真实长度(元素个数),请参阅
Uint8Array.prototype.length
。 Uint8Array.prototype
-
TypedArray 对象的原型。
静态方法
Uint8Array.from()
-
从一个数组或可迭代的对象创建一个新的
Uint8Array
数组,可参见Array.from()
. Uint8Array.of()
-
通过一个可变数目的参数创建一个新的
Uint8Array
数组,可参见Array.of()
.
实例属性
还从其父接口 TypedArray
继承实例属性。
Uint8Array.prototype.constructor
-
返回创建实例属性的函数,默认为
Uint8Array
构造器。 Uint8Array.prototype.buffer
只读-
返回由
Uint8Array
引用的ArrayBuffer
,在构造时期固定,所以是只读的。 Uint8Array.prototype.byteLength
只读-
返回
Uint8Array
长度(字节数)。在构造时期固定,所以是 只读的。 Uint8Array.prototype.byteOffset
只读-
返回
Uint8Array
距离其ArrayBuffer
起始位置的偏移(字节数)。在构造时期固定,所以是 只读的。 Uint8Array.prototype.length
只读-
返回保存在
Uint8Array
中的元素数量。在构造时期固定,所以是 只读的。
实例方法
从其父接口 TypedArray
继承实例方法。
示例
// 来自长度
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
// 来自数组
var arr = new Uint8Array([21, 31]);
console.log(arr[1]); // 31
// 来自另一个 TypedArray
var x = new Uint8Array([21, 31]);
var y = new Uint8Array(x);
console.log(y[0]); // 21
// 来自 ArrayBuffer
var buffer = new ArrayBuffer(8);
var z = new Uint8Array(buffer, 1, 4);
// 来自一个迭代器
var iterable = (function* () {
yield* [1, 2, 3];
})();
var uint8 = new Uint8Array(iterable);
// Uint8Array[1, 2, 3]
规范
Specification |
---|
ECMAScript Language Specification # table-49 |
浏览器兼容性
BCD tables only load in the browser