京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

JavaScript中Blob的具体实现

2024-11-2 22:45| 发布者: 284cc| 查看: 84| 评论: 0

摘要: 目录利用场景相关API注意事项创建 Blob对象预览图片示例常用于处理惩罚文件数据、图像数据、音频数据等。Blob对象通常用于在客户端处理惩罚文件,如上传文件、下载文件、处理惩罚图像等操作。Blob对象可以通过Blob构
目录

常用于处理惩罚文件数据、图像数据、音频数据等。Blob对象通常用于在客户端处理惩罚文件,如上传文件、下载文件、处理惩罚图像等操作。Blob对象可以通过Blob构造函数创建,也可以通过其他方式获取,比如从File对象中获取。

利用场景

  • 文件上传:将用户选择的文件转换为Blob对象,然后通过Ajax哀求将Blob对象发送到服务器。
  • 文件下载:将服务器返回的文件数据转换为Blob对象,然后通过URL.createObjectURL()生成下载链接,供用户下载。
  • 图片处理惩罚:将图片文件转换为Blob对象,然后可以举行压缩、裁剪等操作。
  • 音频视频处理惩罚:处理惩罚音频、视频文件时,也可以利用Blob对象来操作二进制数据。

相关API

  • slice(start, end, contentType):从Blob对象中提取指定范围的数据,返回一个新的Blob对象。参数start和end分别表现提取数据的起始和结束位置(单位为字节),contentType是可选的,表现新Blob对象的MIME范例。
[code]const blob = new Blob(["Hello, world!"]); const slicedBlob = blob.slice(0, 5, "text/plain"); [/code]
  • size:返回Blob对象的巨细,单位为字节。
[code]const blob = new Blob(["Hello, world!"]); console.log(blob.size); // 输出 13 [/code]
  • type:返回Blob对象的MIME范例。
[code]const blob = new Blob(["Hello, world!"], { type: "text/plain" }); console.log(blob.type); // 输出 "text/plain" [/code]
  • arrayBuffer():将Blob对象转换为ArrayBuffer对象。
[code]const blob = new Blob(["Hello, world!"]); blob.arrayBuffer().then(arrayBuffer => { // 处理惩罚ArrayBuffer对象 }); [/code]

注意事项

如果不想再利用这个对象。可以调用[code]URL.revokeObjectURL(你的url)[/code],最幸亏不利用时间就开释,镌汰占用资源

创建 Blob对象

[code]var blob = new Blob(["Hello World!"],{type:"text/plain"}); console.log(blob); /* Blob {size: 12, type: "text/plain"} */ [/code]

预览图片

拿到了一个Blob对象,该对象对应一个图片,可以利用下面的方式预览:

[code]cropper.getCroppedCanvas().toBlob(function(img) { var image2 = document.getElementById('avatar2'); image2.src=URL.createObjectURL(img); }); [/code]
  • img 是个图片Blob对象
  • avatar2 是个 html img 元素

示例

[code]<!DOCTYPE html> <html lang="zh" > <head> <meta charset="utf-8"> </head> <body class="white-bg"> <a id="id1" href="#" rel="external nofollow" >blob</a> <script type="text/javascript"> var blob = new Blob(["Hello World!"],{type:"text/plain"}); var id1Element = document.getElementById("id1"); id1Element.href = URL.createObjectURL(blob); </script> </body> </html> [/code]

在这里插入图片描述

在这里插入图片描述

到此这篇关于JavaScript中URL和Blob的具体实现的文章就先容到这了,更多相关JavaScript URL和Blob内容请搜刮脚本之家从前的文章或继续欣赏下面的相关文章盼望大家以后多多支持脚本之家!


来源:https://www.jb51.net/javascript/326719s2o.htm
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-7-2 08:32 , Processed in 0.030313 second(s), 19 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

返回顶部