Uint8ClampedArray

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.

Uint8ClampedArray 类型数组表示限制为 0-255 的 8 位无符号整数数组。除非明确提供初始化数据,否则内容将初始化为 0。一旦建立,你可以使用对象的方法或使用标准数组索引语法(即使用括号表示法)来引用数组中的元素。

¥The Uint8ClampedArray typed array represents an array of 8-bit unsigned integers clamped to 0–255. The contents are initialized to 0 unless initialization data is explicitly provided. Once established, you can reference elements in the array using the object's methods, or using standard array index syntax (that is, using bracket notation).

Uint8ClampedArray 是隐藏 TypedArray 类的子类。

¥Uint8ClampedArray is a subclass of the hidden TypedArray class.

构造函数

¥Constructor

Uint8ClampedArray()

创建一个新的 Uint8ClampedArray 对象。

静态属性

¥Static properties

还从其父级 TypedArray 继承静态属性。

¥Also inherits static properties from its parent TypedArray.

Uint8ClampedArray.BYTES_PER_ELEMENT

返回元素大小的数值。1Uint8ClampedArray 的情况下。

静态方法

¥Static methods

从其父级 TypedArray 继承静态方法。

¥Inherits static methods from its parent TypedArray.

实例属性

¥Instance properties

还从其父级 TypedArray 继承实例属性。

¥Also inherits instance properties from its parent TypedArray.

这些属性在 Uint8ClampedArray.prototype 上定义并由所有 Uint8ClampedArray 实例共享。

¥These properties are defined on Uint8ClampedArray.prototype and shared by all Uint8ClampedArray instances.

Uint8ClampedArray.prototype.BYTES_PER_ELEMENT

返回元素大小的数值。如果是 Uint8ClampedArray,则为 1

Uint8ClampedArray.prototype.constructor

创建实例对象的构造函数。对于 Uint8ClampedArray 实例,初始值为 Uint8ClampedArray 构造函数。

实例方法

¥Instance methods

从其父级 TypedArray 继承实例方法。

¥Inherits instance methods from its parent TypedArray.

示例

¥Examples

创建 Uint8ClampedArray 的不同方法

¥Different ways to create a Uint8ClampedArray

js
// From a length
const uint8c = new Uint8ClampedArray(2);
uint8c[0] = 42;
uint8c[1] = 1337;
console.log(uint8c[0]); // 42
console.log(uint8c[1]); // 255 (clamped)
console.log(uint8c.length); // 2
console.log(uint8c.BYTES_PER_ELEMENT); // 1

// From an array
const x = new Uint8ClampedArray([21, 31]);
console.log(x[1]); // 31

// From another TypedArray
const y = new Uint8ClampedArray(x);
console.log(y[0]); // 21

// From an ArrayBuffer
const buffer = new ArrayBuffer(8);
const z = new Uint8ClampedArray(buffer, 1, 4);
console.log(z.byteOffset); // 1

// From an iterable
const iterable = (function* () {
  yield* [1, 2, 3];
})();
const uint8cFromIterable = new Uint8ClampedArray(iterable);
console.log(uint8cFromIterable);
// Uint8ClampedArray [1, 2, 3]

规范

Specification
ECMAScript Language Specification
# table-49

¥Specifications

浏览器兼容性

BCD tables only load in the browser

¥Browser compatibility

也可以看看