Добавление ArrayBuffers

Каков предпочтительный способ добавления / объединения ArrayBuffers?

Я принимаю и анализирую сетевые пакеты с различными структурами данных. Входящие сообщения читаются в ArrayBuffers. Если приходит частичный пакет, мне нужно сохранить его и дождаться следующего сообщения, прежде чем пытаться проанализировать его.

В настоящее время я делаю что-то вроде этого:

function appendBuffer( buffer1, buffer2 ) {
  var tmp = new Uint8Array( buffer1.byteLength + buffer2.byteLength );
  tmp.set( new Uint8Array( buffer1 ), 0 );
  tmp.set( new Uint8Array( buffer2 ), buffer1.byteLength );
  return tmp.buffer;
}

Очевидно, что вы не можете обойтись без необходимости создания нового буфера, поскольку ArrayBuffers имеют фиксированную длину, но необходимо ли инициализировать типизированные массивы? По прибытии я просто хочу иметь возможность обрабатывать буферы как буферы; типы и структуры не имеют значения.

Ответы на вопрос(3)

Ваш ответ на вопрос