• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

이벤트 위임관련...

21.10.12 11:48 작성 조회수 151

1

내용 너무 좋네요... 버블링과 캡처링에 대해서 쉽게 설명해주셨어요.

다만 개인적으로 아쉬운부분은 왜 요소마다 addEventListener를 매번 등록이 아닌 이벤트 위임을 사용하게되는지 내용을 구체적으로 더 언급을 해주셨으면 좋지않았을까싶어요.

제가 아는 범위내에서 설명을 드려보고자한다면 이벤트가 필요한 요소마다 매번 addEventListener를 등록하게된다면 메모리 부담이 증가하게됩니다. 그래서 이벤트 위임을 이용하는것으로 알고 있어요. 여기서 질문이 있는데... js에서 만약 등록된 요소를 remove element를 하게된다면 이전에 removeEventListener를 하고 remove element를 해야할까요? 아니면 그냥 요소만 삭제한다면 gc에서 알아서 지워줄까요??

답변 1

답변을 작성해보세요.

0

안녕하세요 아기고양이님! 항상 좋은 질문 감사합니다.

너어무 유익한 질문이라고 생각됩니다 ㅎㅎ

아쉽게도 저는 별 생각 없이 remove element로 마무리를 했었는데요 ㅋㅋ;;

찾아보니 테스트 해본 분이 있었습니다.

https://stackoverflow.com/questions/6033821/do-i-need-to-remove-event-listeners-before-removing-elements

결국 결론은 최신 브라우저의 경우 remove element 만 사용해도 메모리 누수는 없다. 하지만 좋은 습관으로 생각된다로 마무리하고 있군요!