ArrayBuffer() 생성자
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
ArrayBuffer()
생성자는 ArrayBuffer
객체를 생성합니다.
시도해보기
구문
매개변수
length
-
생성할
ArrayBuffer
의 바이트 크기. length
-
생성할 배열 버퍼의 바이트 단위의 크기.
options
Optional-
다음 속성을 포함하는 객체.
maxByteLength
Optional-
배열 버퍼가 크기를 재조정할 수 있는 바이트 단위 최대 크기.
반환 값
지정한 크기를 가진 새로운 ArrayBuffer
객체. 내용은 모두 0으로 초기화됩니다.
지정된 크기의 새 ArrayBuffer
객체입니다. maxByteLength
속성이 명시되어 있을 경우 이 값으로 maxByteLength
속성이 설정됩니다. 그 내용은 0으로 초기화됩니다.
예외
RangeError
-
다음 중 한 가지 경우에 발생합니다.
length
혹은maxByteLength
가Number.MAX_SAFE_INTEGER
(≥ 253)보다 크거나 음수일 경우length
가maxByteLength
보다 클 경우.
예제
ArrayBuffer 생성하기
이 예제에서는 버퍼를 참조하는 Int32Array
뷰를 사용하여 8바이트 버퍼를 만듭니다.
const buffer = new ArrayBuffer(8);
const view = new Int32Array(buffer);
크기 조절이 가능한 ArrayBuffer 생성하기
이 예제에서는 최대 16바이트까지 크기를 조정할 수 있는 8바이트 버퍼를 생성한 다음 resize()
이를 12바이트로 조정합니다.
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });
buffer.resize(12);
참고:
maxByteLength
는 사용 사례에 맞게 가능한 가장 작은 값으로 설정하는 것이 좋습니다. 메모리 부족 오류의 위험을 줄이려면1073741824
(1GB)를 초과하지 않아야 합니다.
명세서
Specification |
---|
ECMAScript Language Specification # sec-arraybuffer-constructor |
브라우저 호환성
BCD tables only load in the browser