概要 JavaScriptでバイナリデータを扱おうとするとBufferとArraryBufferという似た名前のオブジェクトが登場して混乱したり、Uint8Arrayという耳慣れないオブジェクトが登場して途方に暮れたりすることがあると思います。本記事ではこれらのオブジェクトの概念を整理することでJavaScriptでのバイナリデータの扱いの見通しを良くしていきます。 概念の整理 まずバイナリデータを処理しようとしている環境がNode.jsなのかブラウザ環境なのかが重要です。Node.js環境の場合はBufferクラスを利用することになります。BufferクラスはNode.jsの標準ライブラリとして実装されています。 ブラウザ環境ではJavaScript自体に実装されているArraryBufferオブジェクトを利用することになります。Bufferは実装されていません。 これらは名前は似ていま
![JavaScript/Node.jsでのバイナリデータ処理 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/212b4f701ae2cb824c92be4148ec38c5f63fc372/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9SmF2YVNjcmlwdCUyRk5vZGUuanMlRTMlODElQTclRTMlODElQUUlRTMlODMlOTAlRTMlODIlQTQlRTMlODMlOEElRTMlODMlQUElRTMlODMlODclRTMlODMlQkMlRTMlODIlQkYlRTUlODclQTYlRTclOTAlODYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTRiMGExOTYxNGFlZmMyNTVmNjVlYzU5MDFmOTE0MzRh%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwWXVraV9Pc2hpbWElMjBpbiUyMCVFNiVBMCVBQSVFNSVCQyU4RiVFNCVCQyU5QSVFNyVBNCVCRSVFMyU4MyVCNCVFMyU4MiVBMSVFMyU4MyVBQSVFMyU4MyVBNSVFMyU4MyVCQyVFMyU4MiVCQSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTMyJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9Mzc5OGRjNWMyM2Y3NmU1YWYxZDA2NTQwZjI2YWNlZjA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D09007bfa67449e24028ed6cf37261964)