function add(func,a,b){
return func(a,b);
document.querySelector('#header').addEventListener('click',add())
// x 함수의 리턴값을 부르는것이다 엄연히 함수가 아니다
document.querySelector('#header').addEventListener('click',onClick())
// 하지만 아래의 경우 return 이 console이기 때문에 이건 맞게 쓰여진 부분이다.
const onClick = () =>() => {
console.log('test');
}
// 고차 함수일때 헷갈릴 수 있지만 결국 아래와 같이 되어 있는걸 풀어서 쓴다면 아래와 같아진다
const onClick = () =>{
return () =>{
console.log('test');
}
}
<div onClick={onClick()}</div>
// react 에서 이런게 많은데 결국 return 값이기 때문에 잘 봐야함
결론적으로 파라미터 있을때는 교차함수로 만들어버리는게 좋고
그게 아니면 그냥 함수만 호출되게 쓰는게 좋다