--- title: BlobBuilder slug: Web/API/BlobBuilder translation_of: Web/API/BlobBuilder ---

{{ deprecated_header() }}

{{ SeeCompatTable() }}

The BlobBuilder interface provides an easy way to construct {{ domxref("Blob") }} objects. Just create a BlobBuilder and append chunks of data to it by calling the {{ manch("append") }} method. When you're done building your blob, call {{ manch("getBlob") }} to retrieve a {{ domxref("Blob") }} containing the data you sent into the blob builder.

注:BlobBuilder接口已经废弃,请使用新版草案中引入的 {{domxref('Blob') }}构造函数.

方法概述

void append(in ArrayBuffer data);
void append(in Blob data);
void append(in String data, [optional] in String endings);
Blob getBlob([optional] in DOMString contentType);
File getFile(in DOMString name, [optional] in DOMString contentType);

方法

append()

Appends the contents of the specified JavaScript object to the {{ domxref("Blob") }} being built. If the value you specify isn't a {{ domxref("Blob") }}, ArrayBuffer, or String, the value is coerced to a string before being appended to the blob.

void append(
  in ArrayBuffer data
);

void append(
  in Blob data
);


void append(
  in String data,
  [optional] in String endings
);
参数
data
The data to append to the {{ domxref("Blob") }} being constructed.
endings
Specifies how strings containing \n are to be written out. This can be "transparent" (endings unchanged) or "native" (endings changed to match host OS filesystem convention). The default value is "transparent".

getBlob()

Returns the {{ domxref("Blob") }} object that has been constructed using the data passed through calls to {{ manch("append") }}.

Blob getBlob(
  in DOMString contentType {{ optional_inline() }}
);
参数
contentType {{ optional_inline() }}
The MIME type of the data to be returned in the {{ domxref("Blob") }}. This will be the value of the Blob object's type property.
返回值

A {{ domxref("Blob") }} object containing all of the data passed to any calls to {{ manch("append") }} made since the BlobBuilder was created. This also resets the BlobBuilder so that the next call to {{ manch("append") }} is starting a new, empty blob.

getFile() {{ non-standard_inline() }}

返回一个{{ domxref("File") }}对象.

File getFile(
  in DOMString name,
  [optional] in DOMString contentType
);
参数
name
文件名.
contentType {{ optional_inline() }}
设置返回的{{ domxref("File") }}对象中的数据的MIME类型.这个值将会成为返回的File对象的type属性的值.
返回值

一个{{ domxref("File") }}对象.

浏览器兼容性

{{ CompatibilityTable() }}

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 8
As WebKitBlobBuilder
{{ CompatGeckoDesktop("6.0") }}
As MozBlobBuilder
10
As MSBlobBuilder
{{ CompatNo() }} {{ CompatNo() }}†
getfile() {{ non-standard_inline() }} {{ CompatNo() }} {{ CompatGeckoDesktop("8.0") }} {{ CompatNo() }} {{ CompatNo() }} {{ CompatNo() }}
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 3
As WebKitBlobBuilder
{{ CompatGeckoMobile("6.0") }}
As MozBlobBuilder
{{ CompatNo() }} {{ CompatNo() }} {{ CompatNo() }}
getfile() {{ non-standard_inline() }} {{ CompatNo() }} {{ CompatGeckoMobile("8.0") }} {{ CompatNo() }} {{ CompatNo() }} {{ CompatNo() }}

注:BlobBuilder已被废弃

相关链接