ArrayBuffer
Find out what is an ArrayBuffer and how to use it
Just as a Blob is an opaque representation of data available on disk, an ArrayBuffer is an opaque representation of bytes available in memory.
The constructor takes one parameter, the length in bytes:
const buffer = new ArrayBuffer(64)
An ArrayBuffer value has one (read-only) property: byteLength
, which - as the name suggests - expresses its length in bytes.
It also provides a slice()
instance method which creates a new ArrayBuffer
from an existing one, taking a starting position and an optional length:
const buffer = new ArrayBuffer(64)
const newBuffer = buffer.slice(32, 8)
Downloading data from the internet as an ArrayBuffer
We can download a blob from the internet and store it into an ArrayBuffer using XHR:
const downloadBlob = (url, callback) => {
const xhr = new XMLHttpRequest()
xhr.open('GET', url)
xhr.responseType = 'arraybuffer'
xhr.onload = () => {
callback(xhr.response)
}
xhr.send(null)
}
→ I wrote 17 books to help you become a better developer:
- C Handbook
- Command Line Handbook
- CSS Handbook
- Express Handbook
- Git Cheat Sheet
- Go Handbook
- HTML Handbook
- JS Handbook
- Laravel Handbook
- Next.js Handbook
- Node.js Handbook
- PHP Handbook
- Python Handbook
- React Handbook
- SQL Handbook
- Svelte Handbook
- Swift Handbook
Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025