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 二进制数组(一)