TypedArray.prototype.subarray()

subarray() メソッドは、同じ ArrayBuffer ストアで、この TypedArray オブジェクトと同じ要素の型をもつ新しい TypedArray を返します。先頭のオフセットは含み、末尾のオフセットは含みませんTypedArray型付き配列型の一つです。

構文

typedarray.subarray([begin[, end]])

引数

begin Optional
先頭の要素です。この位置は含まれます。この値が指定されていない場合、配列全体が新しいビューに含まれます。
end Optional
末尾の要素です。この位置は含まれません。この値が指定されていない場合、 begin によって指定された要素から配列の最後まですべての要素が新しいビューに含まれます。

返値

新しい TypedArray オブジェクトです。

解説

beginend によって指定される範囲は、現在の配列に対して有効なインデックスの範囲に丸められます。すなわち、新しい範囲の計算された長さがマイナスなら、ゼロに縮められます。 beginend のどちらかがマイナスなら、配列の最初からではなく、最後からインデックスを参照します。

既存のバッファ上に新しいビューを作っていることにも注意して下さい。すなわち、新しいオブジェクトの内容への変更は、元のオブジェクトに強い影響を与えます。逆もまた同様です。

subarray() メソッドの使用

var buffer = new ArrayBuffer(8);
var uint8 = new Uint8Array(buffer);
uint8.set([1,2,3]);

console.log(uint8); // Uint8Array [ 1, 2, 3, 0, 0, 0, 0, 0 ]

var sub = uint8.subarray(0,4);

console.log(sub);   // Uint8Array [ 1, 2, 3, 0 ]

仕様書

ブラウザーの互換性

BCD tables only load in the browser

関連情報