Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript SharedArrayBuffer.byteLength 속성 완벽 정리

SharedArrayBufferbyteLength 속성은 해당 공유 배열 버퍼(SharedArrayBuffer)의 크기, 즉 전체 바이트 길이를 나타내는 부호 없는 32비트 정수(unsigned 32-bit integer)를 반환합니다.

SharedArrayBuffer는 여러 스레드나 웹 워커(Worker) 간에 메모리를 공유할 수 있도록 지원하는 객체로, 실제로 할당된 바이트 크기를 확인할 때 byteLength 속성을 활용합니다.

문법(Syntax)

사용 문법은 다음과 같습니다.

sharedArrayBuffer.byteLength

이 속성은 매개변수를 받지 않으며, 객체 생성 시 지정된 바이트 크기를 그대로 반환합니다.

예제 코드(Example)

아래 예제는 SharedArrayBuffer를 생성한 후, byteLength 속성으로 버퍼의 길이를 확인하는 코드입니다.

<html>
   <head>
      <title>JavaScript Example</title>
   </head>
   <body>
      <script type="text/javascript">
         var sharedArrayBuffer = new SharedArrayBuffer(8);
         var result = sharedArrayBuffer.byteLength;
         document.write("length of the shared array buffer is: " + result);         
      </script>
   </body>
</html>

위 코드에서는 new SharedArrayBuffer(8)을 통해 8바이트 크기의 공유 배열 버퍼를 생성했습니다. 이후 byteLength 속성을 읽어 그 값을 화면에 출력합니다.

실행 결과(Output)

length of the shared array buffer is: 8

생성 시 지정한 크기인 8이 그대로 반환되는 것을 확인할 수 있습니다.

참고 사항

byteLength 속성은 읽기 전용(read-only)이므로 값을 직접 변경할 수 없습니다. 또한 일반 ArrayBuffer에도 동일한 이름의 속성이 존재하며, 동작 방식도 같습니다. 다만 SharedArrayBuffer는 스레드 간 데이터 공유가 가능하다는 점이 가장 큰 차이입니다.