File/Blob
Blob是最原始的文件对象,File是基于Blob对象改造的。
如何处理一个Blob对象
new FileReader()
方法
方法 | 描述 |
---|---|
readAsDataURL | 读取为base64 |
readAsArrayBuffer | 读取为arraybuffer |
readAsBinaryString | 读取为原始二进制数据 |
readAsText | 读取为文本 |
abort | 中止读取 |
事件
事件 | 描述 |
---|---|
onload | 读取操作完成时触发 |
onloadstart | 读取操作开始时触发 |
onloadend | 读取操作结束时(不论成功还是失败都触发) |
onprogress | 读取Blob时触发 |
onerror | 读取操作发生错误时触发 |
onabort | 读取操作被中断时触发 |
代码片段:
const file = new File(['测试'],'a.txt')
const fr = new FileReader()
fr.readAsDataURL(file)
fr.onload = (res) => {
// 也可以使用fr.result代替res.target.result
console.log(res.target.result)
}
切片上传
Blob.slice()
描述:使用此方法可以对blob/file文件进行切割