W3cubDocs

/JavaScript

Uint8ClampedArray

The Uint8ClampedArray typed array represents an array of 8-bit unsigned integers clamped to 0-255; if you specified a value that is out of the range of [0,255], 0 or 255 will be set instead; if you specify a non-integer, the nearest integer will be set. The contents are initialized to 0. 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).

Syntax

new Uint8ClampedArray(); // new in ES2017
new Uint8ClampedArray(length);
new Uint8ClampedArray(typedArray);
new Uint8ClampedArray(object);
new Uint8ClampedArray(buffer [, byteOffset [, length]]);

For more information about the constructor syntax and the parameters, see TypedArray.

Properties

Uint8ClampedArray.BYTES_PER_ELEMENT
Returns a number value of the element size. 1 in the case of an Uint8ClampedArray.
Uint8ClampedArray.length
Static length property whose value is 0. For the actual length (number of elements), see Uint8ClampedArray.prototype.length.
Uint8ClampedArray.name
Returns the string value of the constructor name. In the case of the Uint8ClampedArray type: "Uint8ClampedArray".
Uint8ClampedArray.prototype
Prototype for the TypedArray objects.

Methods

Uint8ClampedArray.from()
Creates a new Uint8ClampedArray from an array-like or iterable object. See also Array.from().
Uint8ClampedArray.of()
Creates a new Uint8ClampedArray with a variable number of arguments. See also Array.of().

Uint8ClampedArray prototype

All Uint8ClampedArray objects inherit from %TypedArray%.prototype.

Properties

Uint8ClampedArray.prototype.constructor
Returns the function that created an instance's prototype. This is the Uint8ClampedArray constructor by default.
Uint8ClampedArray.prototype.buffer Read only
Returns the ArrayBuffer referenced by the Uint8ClampedArray Fixed at construction time and thus read only.
Uint8ClampedArray.prototype.byteLength Read only
Returns the length (in bytes) of the Uint8ClampedArray from the start of its ArrayBuffer. Fixed at construction time and thus read only.
Uint8ClampedArray.prototype.byteOffset Read only
Returns the offset (in bytes) of the Uint8ClampedArray from the start of its ArrayBuffer. Fixed at construction time and thus read only.
Uint8ClampedArray.prototype.length Read only
Returns the number of elements hold in the UintClamped8Array. Fixed at construction time and thus read only.

Methods

Uint8ClampedArray.prototype.copyWithin()
Copies a sequence of array elements within the array. See also Array.prototype.copyWithin().
Uint8ClampedArray.prototype.entries()
Returns a new Array Iterator object that contains the key/value pairs for each index in the array. See also Array.prototype.entries().
Uint8ClampedArray.prototype.every()
Tests whether all elements in the array pass the test provided by a function. See also Array.prototype.every().
Uint8ClampedArray.prototype.fill()
Fills all the elements of an array from a start index to an end index with a static value. See also Array.prototype.fill().
Uint8ClampedArray.prototype.filter()
Creates a new array with all of the elements of this array for which the provided filtering function returns true. See also Array.prototype.filter().
Uint8ClampedArray.prototype.find()
Returns the found value in the array, if an element in the array satisfies the provided testing function or undefined if not found. See also Array.prototype.find().
Uint8ClampedArray.prototype.findIndex()
Returns the found index in the array, if an element in the array satisfies the provided testing function or -1 if not found. See also Array.prototype.findIndex().
Uint8ClampedArray.prototype.forEach()
Calls a function for each element in the array. See also Array.prototype.forEach().
Uint8ClampedArray.prototype.includes()
Determines whether a typed array includes a certain element, returning true or false as appropriate. See also Array.prototype.includes().
Uint8ClampedArray.prototype.indexOf()
Returns the first (least) index of an element within the array equal to the specified value, or -1 if none is found. See also Array.prototype.indexOf().
Uint8ClampedArray.prototype.join()
Joins all elements of an array into a string. See also Array.prototype.join().
Uint8ClampedArray.prototype.keys()
Returns a new Array Iterator that contains the keys for each index in the array. See also Array.prototype.keys().
Uint8ClampedArray.prototype.lastIndexOf()
Returns the last (greatest) index of an element within the array equal to the specified value, or -1 if none is found. See also Array.prototype.lastIndexOf().
Uint8ClampedArray.prototype.map()
Creates a new array with the results of calling a provided function on every element in this array. See also Array.prototype.map().
Uint8ClampedArray.prototype.move() Unimplemented
Former non-standard version of Uint8ClampedArray.prototype.copyWithin().
Uint8ClampedArray.prototype.reduce()
Apply a function against an accumulator and each value of the array (from left-to-right) as to reduce it to a single value. See also Array.prototype.reduce().
Uint8ClampedArray.prototype.reduceRight()
Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value. See also Array.prototype.reduceRight().
Uint8ClampedArray.prototype.reverse()
Reverses the order of the elements of an array — the first becomes the last, and the last becomes the first. See also Array.prototype.reverse().
Uint8ClampedArray.prototype.set()
Stores multiple values in the typed array, reading input values from a specified array.
Uint8ClampedArray.prototype.slice()
Extracts a section of an array and returns a new array. See also Array.prototype.slice().
Uint8ClampedArray.prototype.some()
Returns true if at least one element in this array satisfies the provided testing function. See also Array.prototype.some().
Uint8ClampedArray.prototype.sort()
Sorts the elements of an array in place and returns the array. See also Array.prototype.sort().
Uint8ClampedArray.prototype.subarray()
Returns a new Uint8ClampedArray from the given start and end element index.
Uint8ClampedArray.prototype.values()
Returns a new Array Iterator object that contains the values for each index in the array. See also Array.prototype.values().
Uint8ClampedArray.prototype.toLocaleString()
Returns a localized string representing the array and its elements. See also Array.prototype.toLocaleString().
Uint8ClampedArray.prototype.toString()
Returns a string representing the array and its elements. See also Array.prototype.toString().
Uint8ClampedArray.prototype[@@iterator]()
Returns a new Array Iterator object that contains the values for each index in the array.

Examples

Different ways to create a Uint8ClampedArray:

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

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

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

// From an ArrayBuffer
var buffer = new ArrayBuffer(8);
var z = new Uint8ClampedArray(buffer, 1, 4);

// From an iterable 
var iterable = function*(){ yield* [1,2,3]; }(); 
var uintc8 = new Uint8ClampedArray(iterable); 
// Uint8ClampedArray[1, 2, 3]

Specifications

Specification Status Comment
Typed Array Specification Obsolete Superseded by ECMAScript 2015.
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'TypedArray constructors' in that specification.
Standard Initial definition in an ECMA standard. Specified that new is required.
ECMAScript Latest Draft (ECMA-262)
The definition of 'TypedArray constructors' in that specification.
Draft ECMAScript 2017 changed the Uint8ClampedArray constructor to use the ToIndex operation and allows constructors with no arguments.

Browser compatibilityUpdate compatibility data on GitHub

Desktop
Chrome Edge Firefox Internet Explorer Opera Safari
Basic support 7 Yes 4 10 11.6 5.1
Uint8ClampedArray() without new throws Yes Yes 44 No Yes ?
Iterable in constructor ? ? 52 ? ? ?
Constructor without arguments ? ? 55 ? ? ?
Mobile
Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android iOS Safari Samsung Internet
Basic support 4 Yes Yes 4 11.6 4.2 Yes
Uint8ClampedArray() without new throws ? ? ? 44 ? ? ?
Iterable in constructor ? ? ? 52 ? ? ?
Constructor without arguments ? ? ? 55 ? ? ?
Server
Node.js
Basic support 0.10
Uint8ClampedArray() without new throws 0.12
Iterable in constructor 4.0.0
Constructor without arguments ?

Compatibility notes

Starting with ECMAScript 2015, Uint8ClampedArray constructors require to be constructed with a new operator. Calling a Uint8ClampedArray constructor as a function without new, will throw a TypeError from now on.

var dv = Uint8ClampedArray([1, 2, 3]);
// TypeError: calling a builtin Uint8ClampedArray constructor
// without new is forbidden
var dv = new Uint8ClampedArray([1, 2, 3]);

See also

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8ClampedArray