js 리 function 앞 에!

1932 단어 JS
우 리 는 모두 함수 의 성명 방식 이 이 두 가지 가 있다 는 것 을 안다.
function fnA(){alert('msg');}//       
var fnB = function(){alert('msg');}//           

함수 호출 방식 은 보통 FunctionName()그러나 우리 가 '정의 함수' 의 끝 에 () 를 붙 이려 고 시도 한다 면 해석 기 는 이해 할 수 없습니다.
function msg(){
  alert('message');
}();//         

함 수 를 정의 하 는 호출 방식 은 msg(); 일 것 입 니 다. 그런데 왜 함수 체 부분 을 () 로 감 싸 면 됩 니까?
원래 괄호 패 키 지 를 사용 하여 함수 체 를 정의 하고 해석 기 는 함수 표현 식 으로 정의 함 수 를 호출 합 니 다.즉, 함 수 를 함수 표현 식 으로 바 꿀 수 있 는 모든 방법 은 해석 기 가 정의 함 수 를 정확하게 호출 할 수 있다 는 것 이다.그리고!바로 그 중의 하나 인 데 + - || ~ 모두 이런 기능 을 가지 고 있다.
그리고아마도 더 많은 것 은 습관 적 인 문제 일 것 이다. 서로 다른 연산 자 는 성능 이 다르다.
//       ,          :
function() {}()

//    (      ),      :
(function() {})()

//              (        ),      ,        ,        
!function() {}()

좋은 웹페이지 즐겨찾기