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

例如我透過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[. .]來修改。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板