addEventListener의 두번째 인자로 왜 함수 실행이 아닌 함수 자체를 가질까?
addEventListener는 두번째 인자로 어떤 이벤트가 발생했을때 실행할 함수를 가진다. (이벤트가 동작한 후에 실행할 함수를 인자로 가짐)
❌ 틀린 코드
1. addEventListener의 두번째 인자에 함수 호출을 가지게 될 경우:
이벤트가 발생했을때 함수가 실행되어 리턴값을 addEventListener의 두번째 인자값으로 가지게 된다.
window.addEventListener('click', offEditMode());
✅ 올바른 코드
2. addEventListener의 두번째 인자에 콜백 함수 안에 함수 호출 or 함수 자체를 가지게 될 경우:
콜백함수안에 원하는 함수를 호출하거나 함수자체를 인자로 넘겨주어 이벤트가 실행된 후 함수가 실행할 수 있도록 해준다.
window.addEventListener('click', () => {
this.offEditMode();
});'JavaScript' 카테고리의 다른 글
| [자바스크립트] Lodash를 사용해서 배열 안에 같은 value를 가진 객체 데이터 삭제해주기 (데이터 고유화 작업) (0) | 2022.08.07 |
|---|---|
| [자바스크립트/한줄정리] 화살표 함수 생략 방법 (0) | 2022.07.08 |
| [JavaScript] 팩토리 함수란? (0) | 2022.06.20 |
| [자바스크립트/한줄정리] 이벤트 버블링과 이벤트 캡처링 (0) | 2022.06.15 |
| [자바스크립트] 프로토타입(prototype) 정리 (0) | 2022.05.28 |
댓글