익명함수와 함수 즉시 호출
익명 함수의 필요성
JS에서는 함수가 1>인자로 사용되거나 2>콜백 함수로 사용될 수 있기 때문에,
일회성으로 사용될 코드의 블럭을 함수로 정의하는 경우가 많다.
즉, 이러한 함수의 경우 이름이 꼭 필요하지 않기때문에 익명함수가 필요하다.
- 중간에 어떤 코드를 추가해야하고 그 코드가 독립적으로 실행되어야한다면?
-함수를 이용해서 scope를 나눠줘야한다.
-또한 정의내린 함수는 한 번만 호출하고 정의한 지점에서 바로 호출한다.<script> function (){ //함수 내용 }(); </script>
<script> function a() { for(var i=1 ; i<=5 ; i ++) { console.log(i) } } a(); </script>
<script> (function() { for(var i=1 ; i<=5 ; i ++) { console.log(i) } })(); </script> // 함수를 정의한 부분을 괄호로 둘러싸고 바로 호출할 수 있다.
- 인자로 바로 전달이 가능해 인자로 함수를 넘길때도 유용하다.
-마찬가지로 Callback 함수명, 생략가능하다.<script> setTimeout( function (){ //함수 내용 }, 3000 ); </script>
<script> function callback(){ console.log("time out"); } setTimeout(callback, 3000); // setTimeout(function callback(){ console.log("time out") }, 3000); </script>
Author And Source
이 문제에 관하여(익명함수와 함수 즉시 호출), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@minj9_6/익명함수와-함수-즉시-호출저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)