简体   繁体   中英

How to get an array from ArrayBuffer?

I have an ArrayBuffer which looks like: 在此输入图像描述

This buffer is placed under variable named myBuffer and what I'm interested in, is to get the Uint8Array from this object.

I tried to loop as:

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

and to directly access to the Array as:

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

but seems none of this is the correct approach

Those pseudo-properties you are seeing are something the developer console is putting there for your benefit. They aren't really there at all, as a property or a symbol (AFAIK), and even if they were it would be non-standard.

You can easily get a Uint8Array view of your buffer the standard way like this though:

new Uint8Array(myBuffer)

You will first need to convert the array buffer into a typed array, then from there you can use the spread operator to create an array

const typedArray = new Uint8Array(myBuffer);
const array = [...typedArray];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM