자바스크립트에서의 해시 테이블
CREATED
2025. 3. 31. 오전 11:17:30
UPDATED
2025. 3. 31. 오전 11:45:21
TAGS
#Javascript#Hash Table
- 자바스크립트에 해시 테이블이라는 이름의 자료구조는 따로 존재하지 않는다.
- 하지만 객체 또는 Map이 사실상 해시 테이블의 역할을 해줄 수 있다.
- 객체는 문자열이나 심볼을 이용하여 속성에 접근하는데 실제 내부 구현에서 해시 테이블과 유사한 방식으로 빠른 접근을 지원한다. 보통 문자열 키를 해싱한 뒤에 테이블 형태로 이를 저장하고 검색하기 때문에 평균적으로
O(1)
의 접근 시간이 보장된다.
- Map은 문자열, 심볼 뿐만 아니라 숫자나 객체도 키로 사용 가능하다. 삽입 순서가 보장되고 내부적으로 해싱을 사용하므로 평균적으로
O(1)
의 접근 시간이 보장된다. 키-값 쌍의 빈번한 추가 및 제거에 관해서는 객체보다 성능이 좋다고 한다.
자바스크립트에서의 해시 테이블
CREATED
2025. 3. 31. 오전 11:17:30
UPDATED
2025. 3. 31. 오전 11:45:21
TAGS
#Javascript#Hash Table
- 자바스크립트에 해시 테이블이라는 이름의 자료구조는 따로 존재하지 않는다.
- 하지만 객체 또는 Map이 사실상 해시 테이블의 역할을 해줄 수 있다.
- 객체는 문자열이나 심볼을 이용하여 속성에 접근하는데 실제 내부 구현에서 해시 테이블과 유사한 방식으로 빠른 접근을 지원한다. 보통 문자열 키를 해싱한 뒤에 테이블 형태로 이를 저장하고 검색하기 때문에 평균적으로
O(1)
의 접근 시간이 보장된다.
- Map은 문자열, 심볼 뿐만 아니라 숫자나 객체도 키로 사용 가능하다. 삽입 순서가 보장되고 내부적으로 해싱을 사용하므로 평균적으로
O(1)
의 접근 시간이 보장된다. 키-값 쌍의 빈번한 추가 및 제거에 관해서는 객체보다 성능이 좋다고 한다.