Blob是JavaScript内建对象,表示不可变的原始数据的类似文件的对象。

blob是表示原始数据的不可变对象,这些数据不一定是javascript原生格式的,文件接口基于Blob,继承Blob功能并将其扩展为支持用户系统上的文件。

Blob有很多用途:

  • 可以从网络的内容创建。
  • 可以保存到磁盘或从磁盘读取。
  • 例如,它们是FileReader API中使用的File的基础数据结构。

我们可以使用 Blob() 构造函数从其他非blob对象和数据构造Blob。

Blob构造函数

Blob构造函数允许从其他对象创建Blob。例如,从字符串构造Blob。

let hero = {name: 'Batman'}let blobObject = new Blob([JSON.stringify(hero, null, 2)], { type: 'application/json' });console.log(blobObject);

现在,如果我们在浏览器中运行此文件,我们将在浏览器控制台中看到以下输出。

Blob size 属性

Blob.size 属性返回Blob或File的大小(以字节为单位)。

var sizeInBytes = blob.size

参见以下示例。

let hero = {name: 'Batman'}let blobObject = new Blob([JSON.stringify(hero, null, 2)],{ type: 'application/json' });console.log(blobObject.size); 

将会输出

Blob.slice() 方法

Blob.slice() 函数用于创建新的Blob对象,该对象包含源Blob的指定字节范围内的数据。

instanceOfBlob.slice([start [, end [, contentType]]]);

参见以下代码。

let hero = {name: 'Batman'}let blobObject = new Blob([JSON.stringify(hero, null, 2)], { type: 'application/json' });console.log(blobObject.slice(10, 16, { type: 'application/json' }));  

输出

总结

使用二进制远程文件时,Blob非常有用。

Blob可能非常大,即也可能包含音频和视频数据。可以动态创建它们,并使用Blob URL用作文件。我们可以通过多种不同方式使用它们,以使它们更有用。


如果对你有所启发和帮助,可以点个关注、收藏,也可以留言讨论,这是对作者的最大鼓励。

作者简介:Web前端工程师,全栈开发工程师、持续学习者。

私信回复大礼包送某网精品视频课程网盘资料,准能为你节省不少钱!

#科技青年# #432头条知识节#

blob转file对象_JavaScript Blob 对象解析相关推荐

  1. java 定义全局对象_JavaScript 全局对象

    全局对象描述 全局对象是预定义的对象,作为 JavaScript 的全局函数和全局属性的占位符.通过使用全局对象,可以访问所有其他所有预定义的对象.函数和属性.全局对象不是任何对象的属性,所以它没有名 ...

  2. HTML5 file对象和blob对象的互相转换

    使用FileReader 对象转换:File => DataURL 该对象用于读取文件(读取单个对象文件,所以,不能直接读取 Filelist 对象文件集合),即把文件内容读入内存.它接收 Fi ...

  3. uniapp webview 直接调用原生摄像头拍照 拍视频 img video,通过ajax获取blob(file为特殊的blob)对象并上传到后端服务器

    web-view中通过plus方法调用摄像头拍照或者拍视频并上传后端的操作步骤如下 plus.camera.getCamera()获取摄像头对象 cmr cmr.captureImage(callba ...

  4. h5如何上传文件二进制流_前端H5中JS用FileReader对象读取blob对象二进制数据,文件传输...

    HTML5中的Blob对象只是二进制数据的容器,本身并不能操作二进制,故本篇将对其操作对象FileReader进行介绍. FileReader FileReader主要用于将文件内容读入内存,通过一系 ...

  5. blob没权限 ie_js使用Blob对象下载兼容ie

    官方解释:Blob是一个类文件的不可变的原始数据对象,非javascript原生数据类型,File对象就是继承自Blob对象,且在Blob的基础上进行扩展,以便支持用户系统上的文件. 先贴下载代码 v ...

  6. Buffer对象与Blob对象

    Buffer类 在Node中,应用需要处理网络协议.操作数据库.处理图片.接收上传文件等,在网络流和文件的操作中,还要处理大量二进制数据,Buffer类被引入作为NodejsAPI的一部分,使其可以在 ...

  7. 理解DOMString、Document、FormData、Blob、File、ArrayBuffer数据类型

    FormData 对象的使用地址:https://developer.mozilla.org/zh-CN/docs/Web/API/FormData/Using_FormData_Objects 一. ...

  8. DOMString、Document、FormData、Blob、File、ArrayBuffer数据类型

    一.XMLHttpRequest 2.0的家臣们 我大学那会儿,一个称为Ajax的东西对前端行业造成了深远影响,不仅是JS语言,而包括前端地位.职位兴起以及工作分工等.抛开IE6浏览器不谈,其他浏览器 ...

  9. file文件转blob格式后下载 ,file文件下载

    使用FileReader 对象转换 (该对象用于读取单个文件),接收File对象或Blob对象 base64下载 针对不同类型文件,FileReader使用不同的方法读取 readAsBinarySt ...

最新文章

  1. python跨文件全局变量_Python 进程之间共享数据(全局变量)的方法
  2. R语言构建logistic回归模型:构建模型公式、拟合logistic回归模型、模型评估,通过混淆矩阵计算precision、enrichment、recall指标
  3. iOS UTI(统一类型标识)
  4. 2013河北省职称计算机应用能力考试操作题答案,2013河北省职称计算机应用能力考试操作题步骤详解(部分).doc...
  5. 电脑配置及价格_游戏主机推荐 AMD锐龙R52600X配RTX2060组装电脑配置清单及价格
  6. DOxygen for C++使用说明——Markdown支持
  7. 博客园随笔添加自己的版权信息 [转]
  8. vba 将xml导入到excel
  9. .NET中的Assembly分析
  10. 能跳过节假日的闹钟_苏宁小Biu智能闹钟体验:聪明好看,别具风格的“小物件”...
  11. Javascript 学习笔记 - 函数 - 关于IIFE - 关于函数声明和函数表达式 - 个人总结
  12. 关于DiskFileUpload的杂谈
  13. Au 音频效果参考:调制
  14. SpringCloud项目启动
  15. html 在线编辑pdf,iLoveIMG 一个完全免费的PDF文件处理网站,可在线编辑PDF文件
  16. 联想TD350服务器主板型号,【新品】塔式机身 联想ThinkServer TD350
  17. 华为云文件服务器配置,华为云 文件服务器配置
  18. util是什么意思计算机英语,util是什么意思_util怎么读_util翻译_用法_发音_词组_同反义词_跑龙套-新东方在线英语词典...
  19. wangeditor v5 在vue中的使用
  20. servet的生命周期是怎样的?

热门文章

  1. linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)
  2. 深度学习——卷积神经网络 的经典网络(LeNet-5、AlexNet、ZFNet、VGG-16、GoogLeNet、ResNet)
  3. matlab错误:vl_feat工具箱问题
  4. 超级实用!如何为机器学习算法准备数据?
  5. 以太网口差分电平_以太网物理层信号测试与分析
  6. 用函数fopen_s打开数据文件
  7. 最小二乘抛物线拟合原理及证明
  8. cmake的使用-为什么要使用CMake
  9. 高级C语言教程-存储器和指针
  10. STM32F103系列单片机学习笔记1方便以后查看