コンテンツにスキップ

JavaScript/Int8Array

出典: フリー教科書『ウィキブックス(Wikibooks)』

Int8Array

[編集]

概要

[編集]

Int8Array は、8ビットの符号付き整数(int8)の型付き配列を表すJavaScriptオブジェクトです。各要素は 8 ビットの整数としてアクセス可能で、小さな整数を効率的に操作することができます。この配列は、基盤となる ArrayBuffer 上で動作します。

コンストラクタ

[編集]

Int8Array()

[編集]
newInt8Array(buffer[,byteOffset[,length]])newInt8Array(length)newInt8Array(typedArray)newInt8Array(iterable)
  • 引数
    • buffer: ArrayBuffer または SharedArrayBuffer
    • byteOffset (オプション): バイト単位でのオフセット位置(デフォルトは 0)
    • length (オプション): 配列の要素数
    • length (数値): 配列の要素数を指定する
    • typedArray: 既存の型付き配列を基にする
    • iterable: 配列や反復可能オブジェクト(Map や Set など)
  • 戻り値: 指定された条件に基づく新しい Int8Array

プロパティ

[編集]

Int8Array.BYTES_PER_ELEMENT

[編集]
  • 各要素のバイト長(固定値: 1)

Int8Array.prototype.length

[編集]
  • 配列内の要素数を返す(読み取り専用)

Int8Array.prototype.buffer

[編集]
  • 基盤となる ArrayBuffer を返す

Int8Array.prototype.byteOffset

[編集]
  • ArrayBuffer 内の先頭位置をバイト単位で返す

Int8Array.prototype.byteLength

[編集]
  • バッファの全体のバイト長を返す

メソッド

[編集]

Int8Array.prototype.set()

[編集]
int8Array.set(array[,offset])
  • 引数
    • array: コピー元の配列(型付き配列または通常の配列)
    • offset (オプション): 書き込みの開始インデックス(デフォルトは 0)
  • 戻り値: なし
  • 説明: 指定された配列から要素をコピーして設定する

Int8Array.prototype.subarray()

[編集]
int8Array.subarray(begin[,end])
  • 引数
    • begin: 開始インデックス
    • end (オプション): 終了インデックス(デフォルトは配列の終端)
  • 戻り値: 元の配列の部分範囲を共有する新しい Int8Array

使用例

[編集]
// Int8Arrayの作成constbuffer=newArrayBuffer(8);constint8Array=newInt8Array(buffer);// 配列の要素を設定int8Array[0]=42;int8Array[1]=-128;console.log(int8Array[0]);// 42console.log(int8Array[1]);// -128// 配列のコピーconstsubArray=int8Array.subarray(0,1);console.log(subArray[0]);// 42

注意点

[編集]
  • Int8Array は 8 ビットの符号付き整数のみを扱い、他の型の値を代入しようとするとエラーになる
  • バッファのバイト長は Int8Array.BYTES_PER_ELEMENT(1バイト)の倍数である必要がある
  • メモリ効率が重要な場合に特に便利で、ビット単位での操作が求められる場面で使用される

関連オブジェクト

[編集]

ブラウザサポート

[編集]
  • Chrome 4+
  • Firefox 3.5+
  • Safari 4+
  • Edge 12+

仕様

[編集]
  • ECMAScript 2015 (ES6)
close