JavaScript 배열은 진짜 배열이 아니다.
- 배열은 연속적인 메모리 로케이션의 묶음을 사용한다.
- 따라서 특정 값을 찾기가 용이하다.
( 어느 메모리 블록에 저장되어있는지 찾기가 쉬움 ) - 반면, JavaScript의 배열은 hash-map 이다.
Linked List를 통해서 구현된다. ( ??? ) - 특정 값을 찾으려면 메모리 시작점부터 원하는 값까지 탐색해 나가야 한다.
JavaScript 배열의 진화
- 최근 JavaScript 엔진의 경우, 모든 요소가 동일한 타입을 가진 배열의 경우, 연속적으로 메모리를 할당한다.
- ES6 이후, Typed Array가 추가되었으며, 이를 통해 ArrayBuffer를 사용할 수 있게 되었다.
- ArrayBuffer는 contiguous 메모리 블록을 제공하고, 이것을 마음대로 다룰 수 있게 해준다.
- ArrayBuffer를 사용한 Typed Array는 기존 JS의 Array보다 몇 배나 월등한 처리 속도를 가진다.
| 참조
'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 |
댓글