ArrayBuffer.prototype.resize()

Baseline 2024

Newly available

Since July 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

ArrayBuffer 인스턴스의 resize() 메서드는 ArrayBuffer를 명시된 바이트 크기만큼 크기를 조절합니다.

시도해보기

구문

js
resize(newLength)

매개변수

newLength

크기를 조절할 ArrayBuffer의 새로운 바이트 단위의 길이.

반환 값

없음 (undefined).

예외

TypeError

ArrayBuffer가 분리되거나 크기 조절이 불가할 경우 발생합니다.

RangeError

ArrayBuffermaxByteLength 보다 newLength가 클 경우 발생합니다.

설명

resize() 메서드는 ArrayBufferresizable이고 새로운 크기가 ArrayBuffermaxByteLength 이하이면 newLength 매개변수에 지정된 크기로 ArrayBuffer 크기를 조정합니다. 새 바이트는 0으로 초기화됩니다.

resize()를 사용하여 ArrayBuffer를 축소하거나 늘릴 수 있습니다. 이는 newLengthArrayBuffer의 현재 byteLength보다 작을 수 있습니다.

예제

resize() 사용하기

이 예제에서 최대 길이가 16으로 크기 조절이 가능한 우리는 8바이트 버퍼를 만들고 이 버퍼의 resizable 속성을 체크하여 resizabletrue를 반환하면 크기를 조절합니다.

js
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });

if (buffer.resizable) {
  console.log("Buffer is resizable!");
  buffer.resize(12);
}

명세서

Specification
ECMAScript Language Specification
# sec-arraybuffer.prototype.resize

브라우저 호환성

BCD tables only load in the browser

같이 보기