[javascript] 익명 함수의 사용 이유

자바스크립트에서 익명 함수는 이름이 없는 함수를 의미합니다. 이러한 함수는 다양한 상황에서 유용하게 사용될 수 있습니다.

1. 콜백 함수

익명 함수는 주로 콜백 함수로 사용됩니다. 콜백 함수는 다른 함수에 매개변수로 전달되거나, 다른 함수 내에서 호출되는 함수를 말합니다. 이때 함수의 이름이 필요없는 경우 익명 함수를 사용하여 간편하게 콜백 함수를 정의할 수 있습니다.

element.addEventListener('click', function() {
  // 클릭 이벤트 발생 시 실행되는 익명 함수 내용
});

2. 즉시 실행 함수

익명 함수는 즉시 실행 함수로도 활용됩니다. 즉시 실행 함수는 정의됨과 동시에 즉시 실행되는 함수로, 스코프를 유지하고 전역 스코프를 깨뜨리지 않기 때문에 유용합니다.

(function() {
  // 즉시 실행되는 익명 함수 내용
})();

3. 클로저

의도적으로 변수의 스코프를 제한하여 변수를 보호하는데 익명 함수가 사용됩니다. 이는 클로저를 생성할 때 많이 사용되며, 외부 스코프의 변수를 익명 함수 내에서 참조하여 사용할 수 있습니다.

function createCounter() {
  let count = 0;
  return function() {
    return ++count;
  };
}

let counter = createCounter();
console.log(counter()); // 1
console.log(counter()); // 2

익명 함수는 콜백 함수, 즉시 실행 함수, 그리고 클로저를 구현할 때 유용하게 사용됩니다.

참고 자료