del*_*lux 3 javascript arrays typed-arrays arraybuffer
该缓冲区放置在名为的变量下,myBuffer
而我感兴趣的是Uint8Array
从此对象获取。
我试图循环为:
myBuffer.forEach(function(element) {
console.log(element);
});
Run Code Online (Sandbox Code Playgroud)
并通过以下方式直接访问数组:
console.log(myBuffer['[[Uint8Array]]']);
console.log(myBuffer['Uint8Array']);
Run Code Online (Sandbox Code Playgroud)
但是似乎这都不是正确的方法
您首先需要将数组缓冲区转换为类型化数组,然后从那里您可以使用扩展运算符创建一个数组
const typedArray = new Uint8Array(myBuffer);
const array = [...typedArray];
Run Code Online (Sandbox Code Playgroud)
您所看到的那些伪属性是开发者控制台为您带来的好处。作为属性或符号(AFAIK),它们根本不存在,即使它们是非标准的。
您可以Uint8Array
像这样通过标准方式轻松查看缓冲区的视图:
new Uint8Array(myBuffer)
Run Code Online (Sandbox Code Playgroud)