2 개의 기존 arrayBuffers를 2 개의 파트로 결합해야합니다.자바 스크립트 결합 ArrayBuffer 파트
파서를 작성 중이며 데이터가 임의 크기의 arraybuffer로 제공되고 데이터가 하나의 끝에 걸쳐 다른 하나의 시작 부분으로 유출됩니다. 그래서 새로운 출력 버퍼를 만들고 한 버퍼의 끝 부분과 다른 버퍼의 시작 부분에 복사해야합니다. 출력은 Arraybuffer가됩니다.
이 데모부터 시작하여 Uint8Arrays를 일부 오프셋과 함께 사용하여 세트를 사용하려고했지만 특정 조합은 Invalid typed array length
을 던졌습니다. 각 배열 또는 오프셋의 길이를 미리 알 수 없습니다.
var buffer1 = new ArrayBuffer(8);
var buffer2 = new ArrayBuffer(8);
var buffer3 = new ArrayBuffer(8);
var uint8_1 = new Uint8Array(buffer1);
var uint8_2 = new Uint8Array(buffer2);
var uint8_3 = new Uint8Array(buffer3);
uint8_1.fill(1);
uint8_2.fill(2);
var uint8_1_slice = new Uint8Array(buffer1 , 0 , 3);
var uint8_2_slice = new Uint8Array(buffer2 , 4, 7);
이 데모에서는 buffer3을 1,1,1,1,2,2,2,2로 설정해야합니다. 1,1,1,1,2,2,2,2을 할
이 데모를 들어 슬라이스
올바른 트랙에 있습니다. 한 번에 1 바이트 씩 복사하지 않으므로 세트를 사용해야합니다. – brianxautumn
실제로 죄송합니다. 슬라이스를 사용할 수 없으며 새 배열을 반환합니다. – brianxautumn
@brianxautumn _ "실제로 죄송합니다. 슬라이스를 사용할 수 없습니다. 새 배열을 반환합니다."_ 무슨 뜻인지 모르시겠습니까? 요구 사항은 새로운 배열을 생성하지 않아야합니까? – guest271314