일반 함수와 화살표 함수의 this 비교

this는 함수의 출생지가 아니라 호출 위치를 기준으로 결정되며, 화살표 함수는 상위 범위의 this를 그대로 사용한다.

상황일반 함수화살표 함수선택 기준
객체 메서드점 왼쪽 객체를 this로 받음바깥 this를 캡처해 부적합객체 상태를 읽어야 하면 일반 함수
이벤트 리스너리스너를 단 요소가 this가 될 수 있음컴포넌트/상위 this 유지DOM 요소가 필요한지 상태가 필요한지
콜백호출자가 this를 바꿀 수 있음상위 this 유지콜백 안 this 혼란을 줄일 수 있는가
생성자new로 새 인스턴스 생성new 사용 불가인스턴스가 필요하면 일반 함수/class
bind고정된 this 함수를 생성대개 필요 없음함수를 넘겨도 this를 유지해야 하는가

this 선택은 문법 취향이 아니라 호출자가 this를 정해야 하는 자리인지, 상위 this를 유지해야 하는 자리인지의 문제다.