---
title: Int8Array
slug: Web/JavaScript/Reference/Global_Objects/Int8Array
tags:
  - Class
  - Int8Array
  - JavaScript
  - TypedArray
  - TypedArrays
translation_of: Web/JavaScript/Reference/Global_Objects/Int8Array
---
<div>{{JSRef}}</div>

<p><strong><code>Int8Array</code></strong> は型付き配列であり、 2 の補数形式の 8 ビット符号付き整数値の配列を表します。中身は <code>0</code> で初期化されます。生成されると、配列の中の要素はオブジェクトのメソッドを使用するか、配列の標準的な添字の構文を使用するか (すなわち、ブラケット構文を使用するか) して参照することができます。</p>

<h2 id="Constructor" name="Constructor">コンストラクター</h2>

<dl>
 <dt>{{jsxref("Global_Objects/Int8Array/Int8Array", "Int8Array()")}}</dt>
 <dd>新しい <code>Int8Array</code> オブジェクトを生成します。</dd>
</dl>

<h2 id="Static_properties" name="Static_properties">静的プロパティ</h2>

<dl>
 <dt>{{jsxref("TypedArray.BYTES_PER_ELEMENT", "Int8Array.BYTES_PER_ELEMENT")}}</dt>
 <dd>要素の大きさの数値を返します。 <code>Int8Array</code> の場合は <code>1</code> になります。</dd>
 <dt>{{jsxref("TypedArray.name", "Int8Array.name")}}</dt>
 <dd>コンストラクターの名前を文字列値で返します。 <code>Int8Array</code> 型の場合は "<code>Int8Array</code>" です。</dd>
</dl>

<h2 id="Static_methods" name="Static_methods">静的メソッド</h2>

<dl>
 <dt>{{jsxref("TypedArray.from", "Int8Array.from()")}}</dt>
 <dd>新しい <code>Int8Array</code> を、配列風オブジェクトや反復可能オブジェクトから生成します。 {{jsxref("Array.from()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.of", "Int8Array.of()")}}</dt>
 <dd>新しい <code>Int8Array</code> を、可変長引数で生成します。 {{jsxref("Array.of()")}} も参照してください。</dd>
</dl>

<h2 id="Instance_properties" name="Instance_properties">インスタンスプロパティ</h2>

<dl>
 <dt>{{jsxref("TypedArray.prototype.buffer", "Int8Array.prototype.buffer")}}</dt>
 <dd><code>Int8Array</code> オブジェクトによって参照される {{jsxref("ArrayBuffer")}} を返します。構築時に設定され、<strong>読取専用</strong>です。</dd>
 <dt>{{jsxref("TypedArray.prototype.byteLength", "Int8Array.prototype.byteLength")}}</dt>
 <dd><code>Int8Array</code> の長さを、 {{jsxref("ArrayBuffer")}} の先頭からのバイト単位で返します。構築時に設定され、<strong>読取専用</strong>です。</dd>
 <dt>{{jsxref("TypedArray.prototype.byteOffset", "Int8Array.prototype.byteOffset")}}</dt>
 <dd><code>Int8Array</code> のオフセットを、 {{jsxref("ArrayBuffer")}} の先頭からのバイト単位で返します。構築時に設定され、<strong>読取専用</strong>です。</dd>
 <dt>{{jsxref("TypedArray.prototype.length", "Int8Array.prototype.length")}}</dt>
 <dd><code>Int8Array</code> オブジェクト内に保持されている要素の数を返します。構築時に設定され、<strong>読取専用</strong>です。</dd>
</dl>

<h2 id="Instance_methods" name="Instance_methods">インスタンスメソッド</h2>

<dl>
 <dt>{{jsxref("TypedArray.copyWithin", "Int8Array.prototype.copyWithin()")}}</dt>
 <dd>配列内で一連の配列要素をコピーします。 {{jsxref("Array.prototype.copyWithin()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.entries", "Int8Array.prototype.entries()")}}</dt>
 <dd>配列内の各添字に対するキーと値の組を含む、新しい<em>配列イテレーター</em>を返します。 {{jsxref("Array.prototype.entries()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.every", "Int8Array.prototype.every()")}}</dt>
 <dd>配列内のすべての要素に対して、指定された関数によるテストに合格するかどうかをテストします。 {{jsxref("Array.prototype.every()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.fill", "Int8Array.prototype.fill()")}}</dt>
 <dd>配列の先頭から末尾までのすべての要素を固定値で設定します。 {{jsxref("Array.prototype.fill()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.filter", "Int8Array.prototype.filter()")}}</dt>
 <dd>この配列のすべての要素のうち、指定されたフィルタリング関数が与えられたフィルタリング関数が <code>true</code> を返すすべての要素で、新しい配列を生成します。 {{jsxref("Array.prototype.filter()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.find", "Int8Array.prototype.find()")}}</dt>
 <dd>指定されたテスト関数を満足する要素が見つかった場合、その値を返します。見つからなかった場合は <code>undefined</code> を返します。 {{jsxref("Array.prototype.find()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.findIndex", "Int8Array.prototype.findIndex()")}}</dt>
 <dd>指定されたテスト関数を満足する要素が見つかった場合、その添字を返します。見つからなかった場合は <code>-1</code> を返します。 {{jsxref("Array.prototype.findIndex()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.forEach", "Int8Array.prototype.forEach()")}}</dt>
 <dd>配列内の各要素に対してある関数を呼び出します。 {{jsxref("Array.prototype.forEach()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.includes", "Int8Array.prototype.includes()")}}</dt>
 <dd>型付き配列にある要素が含まれているかどうかを判断し、それに応じて <code>true</code> または <code>false</code> を返します。 {{jsxref("Array.prototype.includes()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.indexOf", "Int8Array.prototype.indexOf()")}}</dt>
 <dd>配列内の要素のうち、指定された値と等しい最初の要素の添字を返します。見つからない場合は <code>-1</code> を返します。 {{jsxref("Array.prototype.indexOf()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.join", "Int8Array.prototype.join()")}}</dt>
 <dd>すべての配列要素を1つの文字列に結合します。 {{jsxref("Array.prototype.join()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.keys", "Int8Array.prototype.keys()")}}</dt>
 <dd>配列内のすべての添字に対するキーを含む新しい<em>配列イテレーター</em>を返します。 {{jsxref("Array.prototype.keys()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.lastIndexOf", "Int8Array.prototype.lastIndexOf()")}}</dt>
 <dd>配列内の要素のうち、指定された値と等しい最後の要素の添字を返します。見つからない場合は <code>-1</code> を返します。 {{jsxref("Array.prototype.lastIndexOf()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.map", "Int8Array.prototype.map()")}}</dt>
 <dd>この配列のすべての要素を引数として指定された関数を呼び出し、その結果で新しい配列を生成します。 {{jsxref("Array.prototype.map()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.reduce", "Int8Array.prototype.reduce()")}}</dt>
 <dd>アキュームレーターと配列の各要素に対して (左から右へ) 関数を適用し、単一の値に縮小します。 {{jsxref("Array.prototype.reduce()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.reduceRight", "Int8Array.prototype.reduceRight()")}}</dt>
 <dd>アキュームレーターと配列の各要素に対して (右から左へ) 関数を適用し、単一の値に縮小します。 {{jsxref("Array.prototype.reduceRight()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.reverse", "Int8Array.prototype.reverse()")}}</dt>
 <dd>配列要素の順番を反転させます。 — 最初の要素は最後になり、最後の要素は最初になります。 {{jsxref("Array.prototype.reverse()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.set", "Int8Array.prototype.set()")}}</dt>
 <dd>指定された配列から複数の入力値を読み込み、型付き配列に格納します。</dd>
 <dt>{{jsxref("TypedArray.slice", "Int8Array.prototype.slice()")}}</dt>
 <dd>配列の一区間を取り出して新しい配列を返します。 {{jsxref("Array.prototype.slice()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.some", "Int8Array.prototype.some()")}}</dt>
 <dd>この配列内で、指定されたテスト関数を満たす要素が1つでもあった場合に <code>true</code> を返します。 {{jsxref("Array.prototype.some()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.sort", "Int8Array.prototype.sort()")}}</dt>
 <dd>配列の要素をその場でソートし、その配列を返します。 {{jsxref("Array.prototype.sort()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.subarray", "Int8Array.prototype.subarray()")}}</dt>
 <dd>指定された開始位置と終了位置の間にある要素から新しい <code>Int8Array</code> を返します。</dd>
 <dt>{{jsxref("TypedArray.values", "Int8Array.prototype.values()")}}</dt>
 <dd>配列内の各添字に対する値を含む新しい<em>配列イテレーター</em>を返します。 {{jsxref("Array.prototype.values()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.toLocaleString", "Int8Array.prototype.toLocaleString()")}}</dt>
 <dd>配列と要素を表すローカライズされた文字列を返します。 {{jsxref("Array.prototype.toLocaleString()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.toString", "Int8Array.prototype.toString()")}}</dt>
 <dd>配列と要素を表す文字列を返します。 {{jsxref("Array.prototype.toString()")}} も参照してください。</dd>
 <dt>{{jsxref("TypedArray.@@iterator", "Int8Array.prototype[@@iterator]()")}}</dt>
 <dd>配列内のそれぞれの添字の値を含む新しい<em>配列イテレーター</em>オブジェクトを返します。</dd>
</dl>

<h2 id="Examples" name="Examples">例</h2>

<h3 id="Different_ways_to_create_an_Int8Array" name="Different_ways_to_create_an_Int8Array">Int8Array を生成する様々な方法</h3>

<pre class="brush: js notranslate">// 長さを指定
var int8 = new Int8Array(2);
int8[0] = 42;
console.log(int8[0]); // 42
console.log(int8.length); // 2
console.log(int8.BYTES_PER_ELEMENT); // 1

// 配列から
var arr = new Int8Array([21,31]);
console.log(arr[1]); // 31

// 他の型付き配列から
var x = new Int8Array([21, 31]);
var y = new Int8Array(x);
console.log(y[0]); // 21

// ArrayBuffer から
var buffer = new ArrayBuffer(8);
var z = new Int8Array(buffer, 1, 4);

// 反復可能オブジェクトから
var iterable = function*(){ yield* [1,2,3]; }();
var int8 = new Int8Array(iterable);
// Int8Array[1, 2, 3]
</pre>

<h2 id="Specifications" name="Specifications">仕様書</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">仕様書</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('ESDraft', '#table-49', 'TypedArray constructors')}}</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>

<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div>

<p>{{Compat("javascript.builtins.Int8Array")}}</p>

<h2 id="See_also" name="See_also">関連情報</h2>

<ul>
 <li><a href="/ja/docs/Web/JavaScript/Typed_arrays">JavaScript 型付き配列</a></li>
 <li>{{jsxref("ArrayBuffer")}}</li>
 <li>{{jsxref("DataView")}}</li>
</ul>