JSでバイナリを扱う

全3回

ArrayBuffer、Uint8Array、DataView、Blob といったJavaScriptのバイナリデータ型を使用するうえで、理解しておきたい知識を解説。コンピュータの根本に関わる「バイナリ」と「テキスト」に対する理解を起点に、ファイル操作や画像処理の実装まで説明します。

第3回 ファイルからバイト列を取り出す

前回作ったPNG画像の幅と高さを読み取るコードは、バイト列をコードに直接書き写したものでした。今回はBlob・Fileを使って実際のファイルからバイト列を取り出せるようにします。ファイルの中身を覗ける16進ダンプのツールを作り、それを応用して、任意のPNG画像から幅と高さを読み取れるようにします。

第2回 バイナリを扱うオブジェクト

前回、すべてのファイルはバイト列だと確認しました。今回はそのバイト列をJavaScriptで扱うためのArrayBuffer・TypedArray・DataViewを、「メモリ領域」と「それを解釈する窓」という分離の視点から読み解きます。

第1回 バイナリとは何か

「バイナリ」と「テキスト」はまったく別物だと感じていませんか。実はその境界は、思っているほど明確ではありません。シリーズ初回は、すべてのファイルがバイト列であるという出発点から、「バイナリ」という言葉の正体を捉え直します。