一個Blob
對象就是一個包含有隻讀原始數據的類文件對象.Blob
對象中的數據並不必定得是JavaScript中的原生形式.File
接口基於Blob
,繼承了Blob
的功能,而且擴展支持了用戶計算機上的本地文件.canvas
建立Blob
對象的方法有幾種,能夠調用Blob
構造函數,還能夠使用一個已有Blob
對象上的slice()方法
切出另外一個Blob
對象,還能夠調用canvas
對象上的toBlob
方法.瀏覽器
例子:函數
1 |
var blob = new Blob(["Hello world!"], { type: "text/plain" }); |
經過 Blob 對象能夠建立一個子 Blob 對象,將其分割(file 對象也能夠)。翻譯
因爲每一個 Blob 對象都是經過指針指向數據的而不是指向數據自己,能夠快速的建立指向其餘子部分的新的 Blob 對象,這裏使用 slice() 方法。指針
此方法接受三個參數,起始偏移量,結束偏移量,還有可選的 mime 類型。code
當要上傳大文件的時候,此方法很是有用,能夠將大文件分割分段,而後各自上傳,由於分割以後的 Blob 對象和原始的是獨立存在的對象
目前IE系列的瀏覽器 從IE10起支持Blob Chrome和Firefox支持Blob。繼承