代码实现了下载一个javascript blob对象,可用于下载javascript在线编辑图片,在线编辑文本等。
/* fileName: 默认下载文件名
blob: 下载Blob对象
*/
function download(fileName, blob){
var aLink = document.createElement('a');
var evt = document.createEvent("MouseEvents");
evt.initEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
aLink.download = fileName;
aLink.href = URL.createObjectURL(blob);
aLink.dispatchEvent(evt);
}
/* 文本转Blob对象 */
function stringToBlob(text) {
var u8arr = new Uint8Array(text.length);
for (var i = 0, len = text.length; i < len; ++i) {
u8arr[i] = text.charCodeAt(i);
}
var blob = new Blob([u8arr]);
return blob;
}
/* 使用demo */
var blob = stringToBlob('你好');
download('文件名.txt', blob);
有用,不错,不过文本转Blob对象转blob对象,文本的换行没了