00. TL;DR문자열 인터닝은 문자열 값을 저장하고 재사용하기 위한 문자열 테이블(String Intern Table)을 이용합니다.문자열 테이블에 저장되는 것은 자바스크립트 코드에서 보이는 "객체"가 아니라, 엔진 내부에서 관리되는 저수준의 문자열 구조체입니다.우리가 "hello"처럼 쓰는 건 String 객체가 아니라, 내부 엔진에서 관리하는 힙 상의 값입니다.01. 인터닝이란?인터닝은 다음과 같은 원리를 기반으로 합니다:"동일한 값의 데이터는 한 번만 저장하고, 그것을 참조 한다."예를 들어 다음과 같이 같은 문자열 "hello"가 여러 번 사용된다면:const a = "hello";const b = "hello"; 자바스크립트 엔진은 "hello"라는 문자열 값을 딱 한 번 메모리에 저장하고, ..
00. TL;DR자바스크립트에서 문자열은 불변(immutable)한 원시 타입이지만, 그 실제 데이터는 힙(Heap)에 저장되고, 스택에는 참조(reference) 만 남습니다. 01. 스택(Stack)과 힙(Heap)의 차이구분스택(Stack)힙(Heap)저장 방식선입후출 (LIFO)임의 접근 (Random Access)저장 대상원시 값의 참조, 변수, 함수 콜 정보객체, 배열, 문자열 등 복합 구조 데이터접근 속도빠름느림메모리 관리자동으로 스코프에 따라 제거가비지 컬렉터가 제거 (GC)02. 문자열은 어디에 저장될까?02.01. 문자열은 "원시 타입"이다자바스크립트에서 문자열은 primitive type(원시 타입)입니다.→ number, string, boolean, null, undefined,..
- Total
- Today
- Yesterday
- bundler
- 모노레포 스크립트
- uselazyasyncdata
- object literal
- deep dive
- nuxt
- prototype
- vue
- double-linked-list
- interning
- react-router
- TypeScript
- 바이트 코드
- primitive
- JIT
- refrerence
- pakage-lock.json
- useasyncdata
- ViTE
- vee-validate
- npm ci
- string table
- premitive
- webpack
- scoped slot
- pnpm 명령어
- library mode
- react
- string
- JavaScript
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
