JA EN

Blob

読み: ぶろぶ

Binary Large Object の略。ブラウザ上でバイナリデータを扱うための不変オブジェクトで、画像ファイルの読み書きに広く使われる。

Blob (Binary Large Object) は、ブラウザの JavaScript 環境でバイナリデータを表現する不変のオブジェクトである。画像処理においては、ファイル入力から取得した画像データや Canvas で生成した画像を Blob として扱い、ダウンロードや送信に利用する。

File オブジェクトは Blob を継承しており、<input type="file"> で選択された画像は Blob として操作できる。Canvas API の toBlob() メソッドは描画内容を指定フォーマット (JPEGPNG、WebP) の Blob に変換する。

URL.createObjectURL(blob) で一時的な URL を生成し、<img> 要素や <a> 要素のダウンロードリンクに利用するパターンが一般的である。画像圧縮ツールでは、圧縮後の Blob サイズを blob.size で取得し、元ファイルとの容量比較を表示している。メモリリーク防止のため、不要になった Object URL は URL.revokeObjectURL() で解放する必要がある。

関連用語

関連記事