Blob()构造方法返回一个新的Blob对象. 内容是包含参数array的二进制字节流.

语法

var aBlob = new Blob( array, options );

参数

  • array is an Array of ArrayBuffer, ArrayBufferView, Blob, DOMString objects, or a mix of any of such objects, that will be put inside the Blob. DOMStrings are encoded as UTF-8.
  • options is an optional BlobPropertyBag dictionary which may specify the following two attributes:
    • type, with a default value of "", that represents the MIME type of the content of the array that will be put in the blob.
    • endings, with a default value of "transparent", that specifies how strings containing the line ending character \n are to be written out. It is one of the two values: "native", meaning that line ending characters are changed to match host OS filesystem convention, or "transparent", meaning that endings are stored in the blob without change.
var buffer = new ArrayBuffer(2);
var int8View = new Int8Array(buffer);
int8View[0] = 170;
int8View[1] = 254; var blob = new Blob([int8View, event.target.result]);

此段代码创建了一个2字节的二进制数10101010和11111110,并且把它追加到了event.target.result字节流的头部

var buffer = new ArrayBuffer(8);
var uInt32 = new Uint32Array(buffer);
uInt32[0] = 2356021; console.log(uInt32[0]); //
console.log(uInt32.length); //
console.log(uInt32.BYTES_PER_ELEMENT); // var view = new DataView(buffer,0,8);
console.log(view.getUint32(0,4));//

此段代码创建了2个无符号32位整数buff(一个unsigned int需要4个字节空间,所以new ArrayBuffer(8)分配了8个字节,即,可容纳8/4=2个unsigned int类型的整数);

在第1个数组放置2356021,当然你可以使用uInt32[1]放置第二个值,但是你只能放置2个值,毕竟它只分配了8/4=2个unsigned int类型的整数;

调用length可查看ArrayBuffer的长度,这里是2,调用BYTES_PER_ELEMENT可查看每个元素占用的字节数,这里是4;

运用DataView可以以一种方式去读取某段buff的值;

查看更多的例子:

运用XHR异步请求接收二进制流

[JavaScript]使用ArrayBuffer和Blob编辑二进制流的更多相关文章

  1. JavaScript读二进制文件并用ajax传输二进制流

    综合网上多个教程,加上自己实践得出的方法,目前能够兼容谷歌.IE11.IE10. htmlbody里的内容,没什么特殊的. <div id="dConfirm"> &l ...

  2. 前端Blob对二进制流数据的处理方式

    var xhr = new XMLHttpRequest(); xhr.open("post", "/login/getCaptcher?t=" + Math. ...

  3. 接收二进制流(ArrayBuffer) ,并且显示二进制流图片

    1.调用接口,返回二进制流数据 var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { && xhr ...

  4. CEF 自定义用户协议(scheme)实现以二进制流的方式显示图片、视频、音频

    转载:https://www.cnblogs.com/sinceret/p/10417941.html 转载:https://stackoverflow.com/questions/48811756/ ...

  5. 第六章 MVC之 FileResult和JS请求二进制流文件

    一.FileResult 1.简介 表示一个用于将二进制文件内容发送到响应的基类.它有三个子类: FileContentResultFilePathResultFileStreamResult 推荐阅 ...

  6. 【前端知乎系列】ArrayBuffer 和 Blob 对象

    本文首发在 个人博客 更多丰富的前端学习资料,可以查看我的 Github: <Leo-JavaScript>,内容涵盖数据结构与算法.HTTP.Hybrid.面试题.React.Angul ...

  7. axios+post获取并下载后台返回的二进制流

    axios+post获取并下载后台返回的二进制流 let url = $.getCookie('prefixUrl')+'/expenseword/exportWords'; let vm = thi ...

  8. [.net 面向对象程序设计进阶] (9) 序列化(Serialization) (一) 二进制流序列化

    [.net 面向对象程序设计进阶]  (9)  序列化(Serialization) (一) 二进制流序列化 本节导读: 在.NET编程中,经常面向对象处理完以后要转换成另一种格式传输或存储,这种将对 ...

  9. ajax 请求二进制流 图片 文件 XMLHttpRequest 请求并处理二进制流数据 之最佳实践

    写在前面 :从提出需求到完美的解决问题,实现过程是曲折的. 需求:在前(web client)后(Restful Service)端完全解耦的模式框架下,webclient需要请求 Service 返 ...

随机推荐

  1. 【转载】C# 字符串截取

    https://blog.csdn.net/maba007/article/details/78424760

  2. 对空间数据(Shape)重新排序

    打开ArcToolBox,数据管理工具->常规(General)->排序

  3. C# web IIS服务器 DateTime 带中文解决

    C# Web应用在某些电脑IIS上部署运行,读取当前时间带有中文,比如2018-5-1 星期一 上午 12:00:00,虽然使用Format转换可以解决,但代码量较大难免遗漏,会引发问题,为了解决该问 ...

  4. 二十、Linux 进程与信号---非局部跳转

    20.1 setjmp 和 longjmp 函数 20.1.1 函数介绍 #include <setjmp.h> int setjmp(jmp_buf env); 函数功能:设置非局部跳转 ...

  5. solr window环境安装配置和管理页面基本使用

    solr介绍 来自官网http://lucene.apache.org/solr/解释: Solr is highly reliable, scalable and fault tolerant, p ...

  6. 执行sql,使用带参的写法

    db.ExecuteNonQuery("UPDATE QU_QUALITYREPORT SET RETOSTATUS=1 WHERE BATCHID=@0 AND  PROVINCEAREA ...

  7. 常用几个SQL语句(增删改查)

    --创建一个学生测试表 create table teststu( no char(2), name char(4), age number(2) ); --insert 插入数据 insert in ...

  8. 例:判断是不是自有属性hasOwnProperty方法

    自有属性和共有属性: 自有属性:直接保存在对象本地的属性 共有属性:保存在原型对象中,被所有子对象共享的属性 获取时:都可用对象.属性方法 赋值时:自有属性,必须:对象.属性 = 值 共有属性,必须: ...

  9. python的for循环、while循环

    1.for循环使用之乘法表 for i in range(1,10): for j in range(1,i+1): print('%s * %s = %s '%(j,i,i*j),end='') p ...

  10. windows server 2012 配置多用户ftp服务器配置注意点

    1.ftp根目录配置“FTP授权规则”为: 2.配置“FTP用户隔离”为: 3.配置“FTP目录浏览”为: 4.ftp虚拟目录“FTP授权规则”配置为: