+function () {} ();여기의 장점 표시는 또한!, ~와 같은 다른 단독 연산자로 대체 될 수 있으며 그 효과는 다음과 같습니다.
(function () {console.log ( "foo!");}) (); // 또는 (function () {console.log ( "foo!");} ());이 플러스 부호가 없으면 파서는 함수가 함수 선언의 시작이라고 생각하고 다음 ()은 구문 오류를 일으킬 것입니다. 함수 전에 + 부호가 추가되면 함수 표현식이되고 함수 표현식 후 A ()가 추가되면 즉시 실행 된 함수가됩니다.
JS 기능 앞에서 느낌표의 기능을 살펴 보겠습니다.
1. JS 함수 선언 양식
함수 fna () {alert ( 'msg');} // 선언 정의 함수2. JS 기능 발현 양식
var func = function (agr1, arg2) {// 익명 함수 알림 생성 (arg1 + '' + arg2);}3. JS 익명 함수 선언 직후에 실행하기위한 일반적인 형식
(function () { / * code * /}) ();설명
1. 함수를 둘러싼 첫 번째 쌍의 괄호 (function () {})는 이름없는 함수를 스크립트로 반환 한 다음 비 빈 브래킷 쌍이 즉시 괄호 안의 익명 기능의 매개 변수와 함께 리턴되지 않은 기능을 즉시 실행합니다.
2. 브래킷을 사용하여 기능 본문을 정의하면 파서는 함수 표현식 형태로 정의 함수를 호출합니다. 다시 말해, 함수를 함수 표현식으로 전환 할 수있는 모든 메소드를 사용하면 파서가 정의 된 함수를 올바르게 호출 할 수 있습니다. 그리고! 그들 중 하나이고 + - || 그러한 기능이 있습니다.
3.이 기능의 기능은 주로 익명 및 자동 실행입니다.