我们的志愿者还没有将这篇文章翻译为 中文 (简体)。加入我们帮助完成翻译!
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. 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(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 anUint8ClampedArray
. - Uint8ClampedArray.length
- Static length property whose value is 3. 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 alsoArray.from()
. Uint8ClampedArray.of()
- Creates a new
Uint8ClampedArray
with a variable number of arguments. See alsoArray.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 theUint8ClampedArray
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 itsArrayBuffer
. 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 itsArrayBuffer
. 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 alsoArray.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 alsoArray.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
orfalse
as appropriate. See alsoArray.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 alsoArray.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 alsoArray.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
// 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);
Specifications
Specification | Status | Comment |
---|---|---|
Typed Array Specification | Obsolete | Superseded by ECMAScript 6. |
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 2017 Draft (ECMA-262) The definition of 'TypedArray constructors' in that specification. |
Draft |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 7.0 | 4.0 (2) | 11 (as of KB2929437) | 11.6 | 5.1 |
new is required |
? | 44 (44) | ? | ? | ? |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 4.0 | (Yes) | 4.0 (2) | (Yes) | 11.6 | 4.2 |
new is required |
? | ? | 44.0 (44) | ? | ? | ? |
Compatibility notes
Starting with ECMAScript 2015 (ES6), 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]);