首页 > Web开发 > 详细

js中接收和操作ArrayBuffer

时间:2019-11-22 17:15:24      阅读:152      评论:0      收藏:0      [点我收藏+]

关于前段ArrayBuffer的数据处理也是最近遇到的,主要是用于接收并显示后端生成的图片流。

数据的获取:

        一开始我用的时候ajax请求获取的文件流,但是js端并显示不出来该有的图片但是可以读出流,可能是接收和处理的方式造成的,若有大神用ajax请求能够正确读出ArrayBuffer的请指出。

技术分享图片

 

 

这种方式是我成功接收并显示的方法。

数据解析

通过对应数据类型的请求,可以得到二进制数据,数据被存储在通过ArrayBuffer这个构造函数创建一个缓冲区内,取得数据后需要使用相对应的TypedArray进行解析。
类型化数组有以下几种:

名称占用字节描述
Int8Array 1 8位二补码有符号整数
Uint8Array 1 8位无符号整数
Uint8ClampedArray 1 8位无符号整型固定数组(数值在0~255之间)
Int16Array 2 16位二补码有符号整数
Uint16Array 2 16位无符号整数
Int32Array 4 32 位二补码有符号整数
Uint32Array 4 32 位无符号整数
Float32Array 4 32 位 IEEE 浮点数
Float64Array 8 64 位 IEEE 浮点数

Int 为整型,Uint 为无符号数,Float 为浮点型,一个字节占八位,解析数据以"字节"为基础单位,无法直接读取位(不知道是不是这样,反正我是没找到方法)。解析数据的时候要了解数据的存储格式。

错误:

自己之前用ajax方式请求在做数据操作的时候,到了Uint8Array这个对象使用的时候完全转化不了,可能是由于接收的值不够准确吧

 

js中接收和操作ArrayBuffer

原文:https://www.cnblogs.com/javabianhua/p/11911902.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!