---
title: Blob.arrayBuffer()
slug: Web/API/Blob/arrayBuffer
tags:
  - API
  - ArrayBuffer
  - Blob
  - File API
  - Method
  - Reference
  - binary
  - read
translation_of: Web/API/Blob/arrayBuffer
---
<p>{{APIRef("File API")}}</p>

<p>{{domxref("Blob")}} インターフェイスの <code><strong>arrayBuffer()</strong></code> メソッドは、{{domxref("ArrayBuffer")}} 内のバイナリデータとして Blob の内容を解決する {{jsxref("Promise")}} を返します。</p>

<ul>
</ul>

<h2 id="シンタックス">シンタックス</h2>

<pre class="syntaxbox notranslate">var <em>bufferPromise</em> = <em>blob</em>.arrayBuffer();

<em>blob</em>.arrayBuffer().then(<em>buffer</em> =&gt; /* ArrayBuffer を処理します。 */);

var <em>buffer</em> = await <em>blob</em>.arrayBuffer();</pre>

<h3 id="パラメータ">パラメータ</h3>

<p>なし</p>

<h3 id="戻り値">戻り値</h3>

<p>Blob のデータをバイナリ形式で含む {{domxref("ArrayBuffer")}} で解決する Promise。</p>

<h3 id="例外">例外</h3>

<p>このメソッドは例外をスローしませんが、Promise を拒否することがあります。例えば、Blob のデータを取得するために使用されたリーダーが例外をスローした場合などです。データの取得中に発生した例外はすべて拒否に変換されます。</p>

<h2 id="使用上のメモ">使用上のメモ</h2>

<p>{{domxref("FileReader.readAsArrayBuffer()")}} メソッドに似ていますが、<code>arrayBuffer()</code> は、<code>FileReader</code> インターフェイスのメソッドのようにイベントベースの API ではなく、Promise を返します。</p>

<h2 id="仕様">仕様</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">仕様書</th>
   <th scope="col">ステータス</th>
   <th scope="col">コメント</th>
  </tr>
  <tr>
   <td>{{SpecName("File API", "#dom-blob-arraybuffer", "Blob.arrayBuffer()")}}</td>
   <td>{{Spec2("File API")}}</td>
   <td></td>
  </tr>
 </tbody>
</table>

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

<div class="hidden">このページの互換性一覧表は、構造化データから生成されています。データに貢献したい方は、https://github.com/mdn/browser-compat-data をチェックしてプルリクエストを送ってください。</div>

<p>{{Compat("api.Blob.arrayBuffer")}}</p>

<h2 id="あわせて参照">あわせて参照</h2>

<ul>
 <li>{{domxref("Body.arrayBuffer()")}}</li>
 <li><a href="/en-US/docs/Web/API/Streams_API">Streams API</a></li>
 <li>{{domxref("FileReader.readAsArrayBuffer()")}}</li>
</ul>