자체 실행 함수라고도 알려진 기능적 표현 (IIFE)은 즉시 자체 -실행 함수로 알려진 코드 블록입니다. 내부 기능은 키워드 (기존 메소드) 또는 화살표 함수를 사용할 수 있습니다. 어쨌든 전체 기능은 한 쌍의 괄호에 포함 된 다음 한 쌍의 괄호가 포함됩니다. 이 두 번째 브래킷 쌍은 연산자를 호출하여 기능을 즉시 실행할 수 있도록하는 것입니다.
함수 선언을 사용하는 전통적인 문법 :
화살표 기능 구문 :
이제 우리는 iife가 무엇인지 알고 있으며 다음 질문은 그것이 왜 유용한가? 다음은 일부 경우입니다.
function
오염을 피하기 위해 새로운 범위를 만들어 글로벌 명명 공간
개인 변수로 클로저를 만듭니다
비동기 및 대기 함수를 수행하는 데 사용됩니다
모듈의 생성
실제로, 나의 일상 작업의 대부분은 인형극을 사용하여 자동 테스트를 수행하는 것입니다. 이 인형극 스크립트는 거대한 iife (일반적으로 수천 명의 대통령)이며 테스트 응용 프로그램 사용자 인터페이스 (UI)의 코드를 실행합니다. 어쨌든 우리의 사용 사례에 대해 계속 논의하겠습니다.
오염의 글로벌 명명 공간을 피하십시오
이것이 무엇을 의미합니까? 본질적으로 글로벌 변수와 동일한 이름의 로컬 변수 사이의 이름 사이의 충돌을 의미합니다. 대규모 엔터프라이즈 애플리케이션에서는 더 분명해지면 다양한 개발자가 동일한 애플리케이션을 처리 할 때 변수 이름을 재사용 할 수 있습니다. 다음 예는 이것을 보여줍니다. <code class="language-javascript">(
function () {
console.log('IIFE called');
}
)();</code>
이 코드를 실행 한 후 출력은 다음과 같습니다.
개인 변수로 클로저를 만듭니다
뒤돌아 보면 닫는 것은 외부 함수 범위에서 변수에 액세스 할 수있는 내부 기능입니다. 이 계산 원형 영역 의이 예제는 이것을 보여줍니다. 또한 외부 함수의 변수는 함수 외부에서 액세스 할 수 없기 때문에 비공개입니다. <code class="language-javascript">(
() => console.log('IIFE with arrow function called')
)();</code>
출력 :
비동기 및 대기 함수를 수행하는 데 사용됩니다
iife는 네트워크 통화와 같은 비동기 작업을 수행하는 데 사용될 수도 있습니다. 다음 예제는 아날로그 서버에서 얻을 항목 목록을 얻습니다.
-
모듈의 생성
이것은 기본 물리적 방정식을 사용하는 모듈입니다. 다른 프로그램에서 내보내고 사용할 수 있습니다. 나는 다른 기사에서 "IIFE 모듈 모드를 사용하여 명령 줄 물리 컴퓨팅 응용 프로그램을 구축하는 것"에서 더 자세히 논의 할 것입니다. 개인 변수 및 폐쇄 사용에주의를 기울이십시오.
-
iife에는 수많은 사용 사례가 있음을 알 수 있습니다. 데이터를 포장하고 응용 프로그램에 모듈화를 추가하여 데이터의 보안을 향상시킬 수 있습니다.
위 내용은 IIFE 사용 사례: 즉시 호출되는 함수 표현식 실행의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!