2011-12-07 63 views
5

据我所知ArrayBuffer长度仅由构造函数设置,不能动态更改。所以我很好奇,是否有可能使用websockets二进制数据消息发送arraybuffer某些部分,而不是整个缓冲区?Websocket二进制数据消息(ArrayBuffer)

+0

也看到数据视图() – Zaffy

回答

2

您可以使用.slice来分割ArrayBufferhttp://jsfiddle.net/rtaB4/21/

var inputBuffer = new Uint8Array([0, 1, 2, 3, 4]).buffer; 
var outputBuffer = inputBuffer.slice(1, 3); 

console.log(outputBuffer.byteLength);  // 2 
console.log(new Uint8Array(outputBuffer)); // [1, 2] 
+0

的WebSocket只能发送ArrayBuffer不Uint8Array或其他 – Demion

+1

@Demion:我知道,输入和输出是这里的'ArrayBuffer'('origBuffer'和'buffer')。 – pimvdb

+0

@pimvdb规格更改更新您的答案 –

相关问题