1. Blob
Blob(binary large object,二进制大对象)原型方法和属性如下表:
方法和属性 | 说明 | 示例 |
new Blob(array, options) | 功能:实例化一个二进制大对象 输入: array: Array<ArrayBuffer | Blob | ArrayBufferView | DOMString> options: { type: '', endings? } 输出:Blob实例 | <略> |
Blob.prototype.slice(start, end, contentType) | 功能:切分Blob数据 | <略> |
Blob.prototype.arrayBuffer() | <略> | <略> |
Blob.prototype.stream() | <略> | <略> |
Blob.prototype.text() | <略> | <略> |
Blob.prototype.type | <略> | <略> |
Blob.prototype.size | <略> | <略> |
url1 = window.URL.createObjectURL(file);
url2 = window.URL.createObjectURL(blob);
2. File
// File继承于Blob
File.prototype.__proto__ === Blob.prototype
主要有两种方法来获取 File 对象
- <input>元素上选择文件后返回的FileList对象
- 文件拖放操作生成的DataTransfer对象
3. FileReader
方法和属性 | 说明 | 示例 |
new FileReader() | <略> | |
FileReader.prototype.result | <略> | |
FileReader.prototype .readAsArrayBuffer() | 功能:以ArrayBuffer格式读取Blob数据,完成后result属性中保存ArrayBuffer结果 | <略> |
FileReader.prototype .readAsBinaryString() | 功能:以文件原始二进制数据读取Blob数据,完成后result属性中保存原始二进制数据结果 | <略> |
FileReader.prototype .readAsText() | 功能:以文本格式读取Blob数据,完成后result属性中保存Text结果 | <略> |
FileReader.prototype .readAsDataURL() | 功能:以dataURL格式Base64读取Blob数据,完成后result属性中保存dataURL格式Base64结果 | <略> |
FileReader.prototype .abort() | <略> | <略> |
FileReader.prototype.onload | <略> | <略> |
FileReader.prototype.onloadstart | <略> | <略> |
FileReader.prototype.onloadend | <略> | <略> |
FileReader.prototype.onprogress | <略> | <略> |
FileReader.prototype.onabort | <略> | <略> |
FileReader.prototype.onerror | <略> | <略> |
FileReader.prototype.error | <略> | <略> |
FileReader.prototype.EMPTY - 0 FileReader.prototype.LOADING - 1 FileReader.prototype.DONE - 2 |
4. 要点总结
|
|
|
ArrayBuffer不能直接操作,需要借助DataView和TypedArray视图对象来操作。后续补充ArrayBuffer、DataView、TypedArray知识点。
注:以上,如有不合理之处,还请帮忙指出,大家一起交流学习~