ArrayBuffer又称类型化数组。
- 数组里面可以放数字、字符串、布尔值以及对象和数组等,ArrayBuffer放0和1组成的二进制数据
- 数组放在堆中,ArrayBuffer则把数据放在栈中(所以取数据时后者快)
- ArrayBuffer初始化后固定大小,数组则可以自由增减。(准确的说,视图才应该跟数组来比较这个特点)
BLOB:
Blob,Binary Large Object的缩写,代表二进制类型的大对象。
Blob对象是二进制数据,但它是类似文件对象的二进制数据,因此可以像操作File对象一样操作Blob对象,实际上,File继承自Blob。
可以通过Blob的构造函数创建Blob对象:
Blob(blobParts[, options])
参数说明:
blobParts:数组类型,数组中的每一项连接起来构成Blob对象的数据,数组中的每项元素可以是
ArrayBuffer
,ArrayBufferView
,Blob
,DOMString
。options:可选项,字典格式类型,可以指定如下两个属性:
-
type,默认值为
""
,它代表了将会被放入到blob中的数组内容的MIME类型。 -
endings,默认值为"transparent",用于指定包含行结束符
\n
的字符串如何被写入。 它是以下两个值中的一个: "native",表示行结束符会被更改为适合宿主操作系统文件系统的换行符; "transparent",表示会保持blob中保存的结束符不变。
请求头相应参数:headers: {'Content-Type': 'application/json'},responseType: 'blob' || ‘arraybuffer’ -