如何操作javascript中的typedArray呢?
阿神
阿神 2017-05-19 10:16:39
0
1
374

比如我通过XMLHttpRequest()方法请求到了一份二进制数据0001001000111100

var oReq = new XMLHttpRequest();
oReq.responseType = "arraybuffer";
var resp = oReq.open("GET",url,true)
oReq.onload = function (oEvent) {
    var arrayBuffer = oReq.response;
}

那么我如何操作这个Arraybuffer呢?我知道可以通过不同的view得到相应的数组
比如

var responseArray = new Uint8Array(arrayBuffer);
console.log(responseArray)
//输出Uint8Array(2) [18, 60]

那么当这个arraybuffer非常非常大的时候,想要提取其中的信息怎么办?4mb的arraybuffer
通过Uint8Array输出后 数组也会有410001000/8 = 50万的长度吧。。
比如我想向arraybuffer中的某些位置补齐数据。。那么应该怎样操作呢?
不会是用Uint8Array这种view来构造新的数组把?

阿神
阿神

闭关修行中......

全部回复(1)
淡淡烟草味

arraybuffer 是不能直接操作的,只能通过DataView或typedArray来访问,如果需要修改某些位的数据的话得先知道数据相对于arrayBuffer的offset,通过dataview.setInt8(byteOffset, value);或者typedArray[..]来修改。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板