gpt4 book ai didi

javascript - data.buffer.length 返回未定义

转载 作者:搜寻专家 更新时间:2023-10-31 23:50:59 25 4
gpt4 key购买 nike

我有通过外部 Node 库输入的可读流。我正在尝试读取并获取 ArrayBuffer 并将其转换为我的程序的其他内容。

input.on(‘data’, function(data){
console.log(data); //returns <Buffer 73 fe 74 fe 95 fe 95 fe b6 fe b6 fe 00 ff 01 ff 37 ff 36 ff 8f ff 8f ff 10 00 10 00 65 00 66 00 95 00 95 00 79 00 7a 00 1b 00 1a 00 be ff be ff 56 ff ... >

console.log(data.buffer); // returns — ArrayBuffer { byteLength: 300 }

console.log(data.buffer.length); //returns undefined
console.log(data.buffer[0]); //returns undefined
});

如果 data.buffer 是一个 ArrayBuffer,为什么我根本无法访问它?

最佳答案

看起来您的数据变量本身就是一个 Buffer,通过获取 data.buffer,您将获取底层的 ArrayBuffer

https://nodejs.org/api/buffer.html#buffer_buf_buffer

所以你应该做类似的事情:

console.log(data.length);
console.log(data[0]);

或者获取 data.buffer 但要注意 ArrayBuffers 与“普通”JS 数组没有太多共同点。

https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer

http://www.javascripture.com/ArrayBuffer

关于javascript - data.buffer.length 返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48453068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com