JavaScript Blob二进制文件对象(二)使用示例

JavaScript Blob二进制文件对象(二)使用示例

 

1.Blob 构造函数用法举例

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

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

2.使用 Blob 创建一个指向类型化数组的URL

参考下面的代码:

var typedArray = GetTheTypedArraySomehow();
var blob = new Blob([typedArray.buffer], {type: 'application/octet-stream'}); // 传入一个合适的 MIME 类型
var url = URL.createObjectURL(blob);
// 会产生一个类似 blob:d3958f5c-0777-0845-9dcf-2cb28783acaf 这样的URL字符串
// 你可以像使用普通 URL 那样使用它,比如用在 img.src 上。

3.从 Blob 中提取数据

一种从Blob中读取内容的方法是使用 FileReader。以下代码将 Blob 的内容作为类型数组读取:

var reader = new FileReader();
reader.addEventListener("loadend", function() {
   // reader.result 包含被转化为类型数组 typed array 的 blob
});
reader.readAsArrayBuffer(blob);

另一种读取Blob中内容的方式是使用Response对象。下述代码将Blob中的内容读取为文本:

var text = await (new Response(blob)).text();

通过使用 FileReader 的其它方法可以把 Blob 读取为字符串或者数据URL。


更多:
JavaScript Blob二进制文件对象(一) 
JavaScript ArrayBuffer 二进制数组(二) 应用场景 
JavaScript ArrayBuffer 二进制数组(一)  
posted @ 2020-08-29 15:22  天马3798  阅读(898)  评论(0编辑  收藏  举报