JavaScript addEventListener() 피해야 할 어리석은 실수

안녕하세요,
이벤트를 처리하기 위해 addEventListener()를 사용하는 것이 더 좋은 방법입니다. 원하는 요소에서 발생한 이벤트에 따라 실행할 함수를 별도로 정의할 수 있습니다.

이제 이벤트의 다른 요소에 해당 기능을 자유롭게 사용하여 재사용성을 보장할 수 있습니다. 그러나 일부 초보자는 직접 호출하여 addEventListener()에 전달하여 실수하는 경향이 있습니다. 다음은 다양한 방법과 시나리오를 설명하는 예입니다.

const btn = document.querySelector(".btn")

//This way, if these statements are required only for this 
//Particular element event
btn.addEventListener("click", () => {
  console.log("I'm clicked")
})

//Reusable function
const reusable = () => {
  console.log("I'm reusable function for events")
} 

//Here comes the mistake, You called it directly
btn.addEventListener("click", reusable())
//"I'm reusable function for events."
//Function executed without an event occurring
//Nothing will happen on click event

//Multiple Ways to fix it

//Don't call it directly
btn.addEventListener("click", reusable)

//Returning it inside another function
btn.addEventListener("click", ()=>reusable())

//Using bind function
btn.addEventListener("click", reusable.bind(null))


읽어 주셔서 감사합니다.

좋은 웹페이지 즐겨찾기