Appearance
downloadBlob-下载
下载blob为指定名称的文件
js
function downloadBlob(blob, filename = '1.png'){
if (!blob) throw new Error('下载失败:Blob 数据为空');
const downloadUrl = URL.createObjectURL(blob);
// a标签
const a = document.createElement('a');
a.style.display = 'none';
a.href = downloadUrl;
a.download = filename;
// 兼容无 click 事件场景:将标签添加到页面再移除
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
// 释放 URL 资源
URL.revokeObjectURL(downloadUrl);
}创建一个纯文本格式的 Blob 对象
js
// 创建Blob对象(包含文本)
const str = "Hello, Blob!";
const blob = new Blob([str], {type: "text/plain;charset=utf-8"});
downloadBlob(blob, 'a.txt')创建一个json文本格式的 Blob 对象
js
const jsonData = {
name: "John Doe",
age: 25,
city: "Example City"
};
const str = JSON.stringify(jsonData, null, 2);
// 创建一个 Blob 对象
const blob = new Blob([str], {type: "application/json;charset=utf-8"});
// 也可以用这个,但是不推荐(已经知道是json格式) const blob = new Blob([str], {type: "text/plain;charset=utf-8"});
downloadBlob(blob, 'data.json')