ArrayBuffer

找出什么是ArrayBuffer以及如何使用它

就像一个斑点是磁盘上可用数据的不透明表示,ArrayBuffer是内存中可用字节的不透明表示。

构造函数采用一个参数,长度以字节为单位:

const buffer = new ArrayBuffer(64)

ArrayBuffer值具有一个(只读)属性:byteLength,顾名思义,以字节为单位表示其长度。

它还提供了slice()创建新的实例方法ArrayBuffer从现有的位置开始,以起始位置和可选的长度为基础:

const buffer = new ArrayBuffer(64)
const newBuffer = buffer.slice(32, 8)

从互联网下载数据作为ArrayBuffer

我们可以从互联网上下载一个Blob并将其存储到ArrayBuffer中,使用XHR

const downloadBlob = (url, callback) => {
	const xhr = new XMLHttpRequest()
	xhr.open('GET', url)
	xhr.responseType = 'arraybuffer'
<span style="color:#a6e22e">xhr</span>.<span style="color:#a6e22e">onload</span> <span style="color:#f92672">=</span> () =&gt; {
<span style="color:#a6e22e">callback</span>(<span style="color:#a6e22e">xhr</span>.<span style="color:#a6e22e">response</span>)
}

<span style="color:#a6e22e">xhr</span>.<span style="color:#a6e22e">send</span>(<span style="color:#66d9ef">null</span>)

}

免费下载我的JavaScript初学者手册


更多浏览器教程: