recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment faire fonctionner typedArray en javascript ?

Par exemple, j'ai demandé une donnée binaire 0001001000111100 via la méthode XMLHttpRequest()

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

Alors, comment puis-je faire fonctionner cet Arraybuffer ? Je sais que le tableau correspondant peut être obtenu via différentes vues
Par exemple

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

Alors, lorsque ce arraybuffer est très, très volumineux, que devez-vous faire si vous souhaitez en extraire les informations qu'il contient ? Une fois le arraybuffer
de 4 Mo généré via Uint8Array, le tableau aura également une longueur de 410001000/8 = 500 000. .
Par exemple, je souhaite remplir des données à certaines positions du arraybuffer. . Alors que faut-il faire ?
Serait-il possible d'utiliser une vue comme Uint8Array pour construire un nouveau tableau ?

阿神阿神2789 Il y a quelques jours393

répondre à tous(1)je répondrai

  • 淡淡烟草味

    淡淡烟草味2017-05-19 10:18:39

    arraybuffer ne peut pas être utilisé directement et n'est accessible que via DataView ou typedArray. Si vous devez modifier certains bits de données, vous devez d'abord connaître le décalage des données par rapport au arrayBuffer, via dataview.setInt8(byteOffset, value); ou typedArray[ .] à modifier.

    répondre
    0
  • Annulerrépondre