메모리 관리와 가비지 컬렉션
개념 설명
JavaScript의 자동 메모리 관리 시스템으로, Mark-and-Sweep 알고리즘을 통해 도달 불가능한 객체를 자동으로 감지하고 메모리를 회수하는 메커니즘.
핵심 포인트
- 메모리 생명주기: 할당 → 사용 → 해제(자동)
- Mark-and-Sweep: 루트에서 도달 가능한 객체만 유지
- 일반적인 누수 원인: 전역 변수, 타이머 미해제, DOM 참조, 큰 클로저
- WeakMap/WeakSet으로 약한 참조 구현 가능
예시 코드
// 메모리 누수 패턴
// 1. 타이머/이벤트 리스너 미해제
class Component {
constructor() {
this.timer = setInterval(() => {}, 1000);
document.addEventListener('click', this.onClick);
}
destroy() {
clearInterval(this.timer);
document.removeEventListener('click', this.onClick);
}
}더 많은 내용을 확인하세요! 📚
“메모리 관리와 가비지 컬렉션”의 전체 내용을 보시려면 프리미엄 플랜이 필요합니다.
✨ 모든 기술 문서 무제한 액세스
📝 실습 예제와 상세한 코드 설명
🎯 면접 예상 질문과 답변 가이드