Как получить массив из ArrayBuffer? - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть ArrayBuffer, который выглядит следующим образом: enter image description here

Этот буфер помещен в переменную с именем myBuffer, и я заинтересован в том, чтобы получить Uint8Array из этого объекта.

Я попытался выполнить цикл как:

myBuffer.forEach(function(element) {
    console.log(element);
});

и получить прямой доступ к массиву как:

console.log(myBuffer['[[Uint8Array]]']);
console.log(myBuffer['Uint8Array']);

, но, похоже, ничего из этогоправильный подход

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Сначала вам нужно преобразовать буфер массива в типизированный массив, затем оттуда вы можете использовать оператор распространения для создания массива

const typedArray = new Uint8Array(myBuffer);
const array = [...typedArray];
0 голосов
/ 18 сентября 2018

Эти псевдо-свойства, которые вы видите, - это то, что консоль разработчика помещает туда для вашей выгоды.На самом деле их там вообще нет, как свойства или символа (AFAIK), и даже если бы они были, это было бы нестандартно.

Вы можете легко получить Uint8Array представление вашего буфераСтандартный способ, как это, хотя:

new Uint8Array(myBuffer)
...