javascript操作二进制数据的相关对象

  1. ArrayBuffer:代表储存二进制数据的一段内存,它不能直接读写,只能通过视图(TypedArray视图和DataView视图)来读写,视图的作用是以指定格式解读二进制数据。平时用的不多,详见ES6:http://es6.ruanyifeng.com/#docs/arraybuffer

  2. Blob:二进制数据容器,可用于处理各种MIME类型的数据。

    1. 属性&方法:
      blob.size //Blob大小(以字节为单位)
      
      blob.type //Blob的MIME类型,如果是未知,则是“ ”(空字符串)
      
      Blob.slice([start[, end[, contentType]]])
      
      /**
      start 可选,开始索引,可以为负数,语法类似于数组的slice方法.默认值为0.
      end 可选,结束索引,可以为负数,语法类似于数组的slice方法.默认值为最后一个索引.
      contentType可选 ,新的Blob对象的MIME类型,这个值将会成为新的Blob对象的type属性的值,默认为一个空字符串
      **/

       

    2. 使用场景

      //下载各种格式的数据,blob接收2个参数,第一个是Array,第二个是MIME对象
      let blob = new Blob([{a:1}], { type: 'application/json' });
      let a = document.createElement('a');
      a.download = "a.json";
      a.href = URL.createObjectURL(blob);
      document.body.appendChild(a);
      a.click();
      document.body.removeChild(a);

       

  3. URL:属性返回一个对象,它提供了用于创建和管理对象URLs的静态方法。它也可以作为一个构造函数被调用来构造 URL 对象

    1. 属性&方法:window.url直接查看即可

    2. 使用场景:同上blob。

  4. File:只是比blob多了name和修改日期属性。详见:https://developer.mozilla.org/zh-CN/docs/Web/API/File

  5. FileReader:允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File 或 Blob 对象指定要读取的文件或数据,详见:https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader

                   

 

 

你可能感兴趣的:(javascript操作二进制数据的相关对象)