본문 바로가기
JavaScript

JavaScript - Typed Array

by ma_ro 2020. 3. 11.

JavaScript 배열은 진짜 배열이 아니다.

  • 배열은 연속적인 메모리 로케이션의 묶음을 사용한다.
  • 따라서 특정 값을 찾기가 용이하다.
    ( 어느 메모리 블록에 저장되어있는지 찾기가 쉬움 )
  • 반면, JavaScript의 배열은 hash-map 이다.
    Linked List를 통해서 구현된다. ( ??? )
  • 특정 값을 찾으려면 메모리 시작점부터 원하는 값까지 탐색해 나가야 한다.

 

JavaScript 배열의 진화

  • 최근 JavaScript 엔진의 경우, 모든 요소가 동일한 타입을 가진 배열의 경우, 연속적으로 메모리를 할당한다.
  • ES6 이후, Typed Array가 추가되었으며, 이를 통해 ArrayBuffer를 사용할 수 있게 되었다.
  • ArrayBuffer는 contiguous 메모리 블록을 제공하고, 이것을 마음대로 다룰 수 있게 해준다.
  • ArrayBuffer를 사용한 Typed Array는 기존 JS의 Array보다 몇 배나 월등한 처리 속도를 가진다.

 

| 참조

 

Diving deep into JavaScript array – evolution & performance | Void Canvas

Before starting the article I would like to state that this is not about the basic of JavaScript array. Neither about teaching syntaxes or showing usage examples. The article is more about memory representation, optimization, behavior differences over synt

voidcanvas.com

 

'JavaScript' 카테고리의 다른 글

Google api client 라이브러리 node-js 삽질기  (0) 2020.07.01
Webpack  (0) 2020.03.13
MongoDB 파일 다루기  (0) 2020.03.08
MongoDB with node.js  (0) 2020.03.03
Express 404처리  (0) 2020.03.02

댓글