h5 二进制数据操作对象 FormData 、Blob、File、FileReader、ArrayBuffer、URL、URLSearchPara

FormData 、Blob、File、FileReader、ArrayBuffer、URL、URLSearchPara

FormData

  • FormData是Ajax 2.0对象用以将数据编译成键值对,以便于XMLHttpRequest来发送数据。XMLHttpRequest Level 2提供的一个接口对象,可以使用该对象来模拟和处理表单并方便的进行文件上传操作。

Blob

  • 一个Blob对象就是一个包含有只读原始数据的类文件对象

File

  • File是Blob的子类,比blob主要多出一个name的属性

FileReader

  • Blob对象只是二进制数据的容器,本身并不能操作二进制,FileReader对象就是专门操作二进制数据的,FileReader主要用于将文件内容读入内存,通过一系列异步接口,可以在主线程中访问本地文件。
ArrayBuffer
  • ArrayBuffer对象用于表示通用的,固定长度的原始二进制数据缓冲区且不能直接操纵 ArrayBuffer 的内容
  • ArrayBuffer的数据,是可以按照字节去操作的,而 Blob只能作为一个完整对象去处理。ArrayBuffer相比Blob更接近真实的二进制,更底层

URL

  • 除了可以使用base64字符串作为内容的DataURI将一个文件嵌入到另外一个文档里,还可以使用URL对象。URL对象用于生成指向File对象或Blob对象的URL
  • blob url 和data url 区别
    • 格式 Blob URL 格式如 blob:域名/uuid , Data URL 格式如: data:[][;base64],
    • 长度 Blob URL 一般长度较短,而 Data URL 因为直接存储图片 base64 编码后的数据,往往比较长。
    • ajax blob 可以直接指定类型
    • dataurl 适用范围更广阔

URLSearchPara

  • URLSearchParams 接口定义了一些实用的方法来处理 URL 的查询字符串
posted @ 2022-05-26 20:40  vx_guanchaoguo0  阅读(321)  评论(0编辑  收藏  举报