Sté*_*hen 5 html javascript blob html5-filesystem
我最终可能会在长时间运行的 Web 应用程序中处理以 Blob 为代表的大量数据。其中一些使用 XHR(缓存友好)获得,其他使用new Blob(...).
我主要关心的是如何管理这些斑点。我最初的想法是保留一些参考资料。但如果在应用程序的整个生命周期中将大量数据保留在内存中,那就很糟糕了。
到目前为止,我在查看 Firefox 源代码时发现了什么:(我还没有得到任何验证!)
Blob 对象是nsDOMFile子类的实例。在实现方面,Blob 和文件之间几乎没有区别。它们是nsDOMFileFile、nsDOMMemoryFile、nsDOMTemporaryFileBlob或nsDOMMultipartFile。
几乎唯一nsDOMMemoryFile使用的地方是:
HTMLCanvasElement#toBlob。binaryType当'blob'.binaryType是时'blob'。所有其他地方都使用nsDOMFileFileor nsDOMTemporaryFileBlob,因此由磁盘存储支持,构造函数除外new Blob。
使用构造函数创建的 Blobnew Blob是 的实例nsDOMMultipartFile。该类实际上包装了一组 blob(上述其他三种类型),并将它们表示为一个。
当传递字符串或 ArrayBuffer 时,它们被复制到新的中nsDOMMemoryFile,然后附加到集合中。当传递任何类型的现有 Blob 时,它会按原样附加到集合中。因此,nsDOMMultipartFile实际上可能具有混合磁盘和内存存储支持。
| 归档时间: |
|
| 查看次数: |
483 次 |
| 最近记录: |