Blob

Blob 对象是包含有只读原始数据的类文件对象。Blob 对象中的数据并不一定得是JavaScript 中的原生形式。File 接口基于 Blob,继承了 Blob 的功能,并且扩展支持用户计算机上的本地文件。

创建 Blob 对象的方法有几种,可以调用 Blob() 构造函数,还可以使用一个已有Blob对象上的 slice() 方法切出另一个 Blob 对象。想要从用户的文件里获取一个Blob对象,请参考File文档。

 

Blob()

继承层次

构造函数

Blob(blobParts[, options])

返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成。

语法

var b1 = new new Boolean(value)

参数

  • value
    可选的Boolean对象的初始值.。

属性列表

名称语法説明
size Blob.sizeBlob 对象中所包含数据的大小(字节)。
typeBlob.type一个字符串,表明该Blob对象所包含数据的MIME类型。如果类型未知,则该值为空字符串。

方法列表

名称语法説明
slice Blob.slice([start[, end[, contentType]]])返回一个新的 Blob 对象,包含了源 Blob 对象中指定范围内的数据。

Blob.prototype

属性列表

无相应成员。

方法列表

无相应成员。

Blob实例

继承层次

Object.prototype
 Blob.prototype
  Blob 实例

Blob构造函数用法举

Blob() 构造函数 允许用其它对象创建一个 Blob 对象。比如,用字符串构建一个 blob:

  var debug = {hello: "world"};
  var blob = new Blob([JSON.stringify(debug, null, 2)],
    {type : 'application/json'});

使用类型数组和 Blob 创建一个 URL

var typedArray = GetTheTypedArraySomehow();
// 传入一个合适的MIME类型
var blob = new Blob([typedArray], {type: "application/octet-binary"});

// 会产生一个类似blob:d3958f5c-0777-0845-9dcf-2cb28783acaf 这样的URL字符串
// 你可以像使用一个普通URL那样使用它,比如用在img.src上。
var url = URL.createObjectURL(blob);

从 Blob 中提取数据

  var reader = new FileReader();
  reader.addEventListener("loadend", function() {
     // reader.result contains the contents of blob as a typed array
  });
  reader.readAsArrayBuffer(blob);