Uint8ClampedArray() constructor
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.
The Uint8ClampedArray()
constructor creates Uint8ClampedArray
objects. The contents are initialized to 0
unless initialization data is explicitly provided.
Syntax
js
new Uint8ClampedArray()
new Uint8ClampedArray(length)
new Uint8ClampedArray(typedArray)
new Uint8ClampedArray(object)
new Uint8ClampedArray(buffer)
new Uint8ClampedArray(buffer, byteOffset)
new Uint8ClampedArray(buffer, byteOffset, length)
Parameters
See TypedArray
.
Exceptions
See TypedArray
.
Examples
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]
Specifications
Specification |
---|
ECMAScript Language Specification # sec-typedarray-constructors |
Browser compatibility
BCD tables only load in the browser