概要
8ビット符号なし整数の配列を表現しますが、要素の値は0-255の範囲に切り詰められます (範囲外の数値を設定しようとすると最小値または最大値が設定されます)。内容は0
で初期化されます。配列を作った後は、オブジェクトのメソッドや標準の配列インデックス構文(すなわち角括弧表記)を使用して、配列内の要素を参照できます。
構文
new Uint8ClampedArray(length); new Uint8ClampedArray(typedArray); new Uint8ClampedArray(object); new Uint8ClampedArray(buffer [, byteOffset [, length]]);
コンストラクタの構文と引数について詳しくは、TypedArrayを参照して下さい。
プロパティ
Uint8ClampedArray.BYTES_PER_ELEMENT
- 要素の大きさを示す数値を返します。
Uint8ClampedArray
の場合は、1。
- Uint8ClampedArray.length
- 値として3を持つ、staticプロパティ。実際の長さ(要素の数)については次を参照:
Uint8ClampedArray.prototype.length
Uint8ClampedArray.name
- コンストラクタの名称の文字列を返します。
Uint8ClampedArray
型の場合は、 "Uint8ClampedArray"。 Uint8ClampedArray.prototype
- TypedArrayオブジェクトのプロトタイプ。
メソッド
Uint8ClampedArray.from()
- 配列オブジェクト(array-like object)または反復可能オブジェクトから新しい
Uint8ClampedArray
を生成します。Array.from()
も参照して下さい。 Uint8ClampedArray.of()
- 可変長引数の新しい
Uint8ClampedArray
を生成します。Array.of()
も参照して下さい。
Uint8ClampedArray
prototype
すべてのUint8ClampedArray
オブジェクトは%TypedArray%.prototype
から継承します。
プロパティ
Uint8ClampedArray.prototype.constructor
- インスタンスのプロトタイプを生成した関数を返します。この関数は、デフォルトでは
Uint8ClampedArray
コンストラクタです。 Uint8ClampedArray.prototype.buffer
読取専用Uint8ClampedArray
によって参照されるArrayBuffer
を返します。構築時に設定され、読取専用となります。Uint8ClampedArray.prototype.byteLength
読取専用ArrayBuffer
の開始位置からUint8ClampedArray
の(バイト単位の)長さを返します。構築時に設定され、読取専用となります。Uint8ClampedArray.prototype.byteOffset
読取専用ArrayBuffer
の先頭からのUint8ClampedArray
のオフセットを (バイト単位で) 返します。構築時に設定され、読取専用となります。Uint8ClampedArray.prototype.length
読取専用UintClamped8Array
内に保持された要素の数を返します。構築時に設定され、読取専用となります。
メソッド
Uint8ClampedArray.prototype.copyWithin()
- 一連の配列要素を配列内にコピーします。
Array.prototype.copyWithin()
も参照して下さい。 Uint8ClampedArray.prototype.entries()
- 配列の各インデックスに対するキー/バリューペアを含む新しい
Array Iterator
オブジェクトを返します。Array.prototype.entries()
も参照して下さい。 Uint8ClampedArray.prototype.every()
- すべての配列要素が関数によって与えられたテストに合格するかどうかテストを実行します。
Array.prototype.every()
も参照して下さい。 Uint8ClampedArray.prototype.fill()
- 開始位置から終了位置までのすべての要素を固定値で設定します。
Array.prototype.fill()
も参照して下さい。 Uint8ClampedArray.prototype.filter()
- 与えられたフィルタリング関数がtrueを返すすべての配列要素をもつ新しい配列を生成します。
Array.prototype.filter()
も参照して下さい。 Uint8ClampedArray.prototype.find()
- 配列要素が与えられたテスト関数を満足する場合、配列の値を返します。もしくは、満足しない場合、
undefined
を返します。Array.prototype.find()
も参照して下さい。 Uint8ClampedArray.prototype.findIndex()
- 配列要素が与えられたテスト関数を満足する場合、配列要素のインデックスを返します。もしくは、満足しない場合、-1を返します。
Array.prototype.findIndex()
も参照して下さい。 Uint8ClampedArray.prototype.forEach()
- 配列中の各要素に対して関数を呼び出します。
Array.prototype.forEach()
も参照して下さい。 Uint8ClampedArray.prototype.includes()
- typed arrayが特定の要素を含んでいるかどうか評価し、その結果に応じて、
true
またはfalse
を返します。Array.prototype.includes()
も参照して下さい。 Uint8ClampedArray.prototype.indexOf()
- 指定した値と等しい配列要素の最初のインデックスを返します。見つからない場合、-1を返します。
Array.prototype.indexOf()
も参照して下さい。 Uint8ClampedArray.prototype.join()
- 配列内のすべての要素を、単一の文字列に結合します。
Array.prototype.join()
も参照して下さい。 Uint8ClampedArray.prototype.keys()
- 配列内の各インデックスに対するキーを含む新しい
Array Iterator
を返します。Array.prototype.keys()
も参照して下さい。 Uint8ClampedArray.prototype.lastIndexOf()
- 指定した値と等しい配列要素の最後のインデックスを返します。見つからない場合、-1を返します。
Array.prototype.lastIndexOf()
も参照して下さい。 Uint8ClampedArray.prototype.map()
- 配列内のすべて要素に対して与えられた関数を呼び出し、その結果を格納した新しい配列を生成します。
Array.prototype.map()
も参照して下さい。 Uint8ClampedArray.prototype.move()
未実装Uint8ClampedArray.prototype.copyWithin()
の以前のの非標準バージョン。Uint8ClampedArray.prototype.reduce()
- アキュムレータと配列内の全ての要素に対して (左から右へ) 関数を適用し、単一の値にreduceします。
Array.prototype.reduce()
も参照して下さい。 Uint8ClampedArray.prototype.reduceRight()
- アキュムレータと配列内の全ての要素に対して (右から左へ) 関数を適用し、単一の値にreduceします。
Array.prototype.reduceRight()
も参照して下さい。 Uint8ClampedArray.prototype.reverse()
- 配列要素の順番を反転させます — 最初の要素は最後になり、最後の要素は最初になります。
Array.prototype.reverse()
も参照して下さい。 Uint8ClampedArray.prototype.set()
- 入力値を指定した配列から読み込み、typed array内に複数の値を格納します。
Uint8ClampedArray.prototype.slice()
- 配列の一部を取り出して新しい配列を返します。
Array.prototype.slice()
も参照して下さい。 Uint8ClampedArray.prototype.some()
- ある配列の少なくとも 1 つの要素が与えられたテスト関数を満たした場合にtrueを返します。
Array.prototype.some()
も参照して下さい。 Uint8ClampedArray.prototype.sort()
- 配列の要素をソートし、その結果を返します。
Array.prototype.sort()
も参照して下さい。 Uint8ClampedArray.prototype.subarray()
- 与えられた開始位置と終了位置の要素インデックスから、新しい
Uint8ClampedArray
を返します。 Uint8ClampedArray.prototype.values()
- 配列内で各インデックスに対する値を含む新しい
Array Iterator
オブジェクトを返します。Array.prototype.values()
も参照して下さい。 Uint8ClampedArray.prototype.toLocaleString()
- 配列と要素を表すローカライズされた文字列を返します。
Array.prototype.toLocaleString()
も参照して下さい。 Uint8ClampedArray.prototype.toString()
- 配列と要素を表す文字列を返します。
Array.prototype.toString()
も参照して下さい。 Uint8ClampedArray.prototype[@@iterator]()
- 配列内で各インデックスに対する値を含む新しい
Array Iterator
オブジェクトを返します。
例
// 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);
仕様
仕様 | ステータス | コメント |
---|---|---|
Typed Array Specification | 廃止された | ECMAScript第6版で置き換えられました。 |
ECMAScript 2015 (6th Edition, ECMA-262) TypedArray constructors の定義 |
標準 | ECMA仕様で初期定義。new 演算子が必要なことが仕様書に含まれました。 |
ECMAScript 2017 Draft (ECMA-262) TypedArray constructors の定義 |
ドラフト |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本サポート | 7.0 | 4.0 (2) | 11 | 11.6 | 5.1 |
new が必要 |
? | 44 (44) | ? | ? | ? |
機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基本サポート | 4.0 | (有) | 4.0 (2) | (有) | 11.6 | 4.2 |
new が必要 |
? | ? | 44 (44) | ? | ? | ? |
互換性について
ECMAScript 2015 (ES6)から、UintClamped8Array
コンストラクタでインスタンスを生成する場合、 new
演算子が必要となります。 UintClamped8Array
を new 演算子を使用せずに関数呼び出しした場合、
TypeError
例外が投げられるでしょう。
var dv = UintClamped8Array([1, 2, 3]); // TypeError: calling a builtin UintClamped8Array constructor // without new is forbidden
var dv = new Uint8ClampedArray([1, 2, 3]);