javascript 에서 두 가지 정의 함수 방식 의 차이 와 함수 의 사전 컴 파일 효과

우 리 는 자바 script 에서 함 수 를 정의 하 는 방식 이 다음 과 같은 두 가지 가 있다 는 것 을 알 고 있다.
function mm(){ }
이 형식 은 하나의 함 수 를 설명 하 는 것 입 니 다. var 가 하나의 변수 체 제 를 설명 하 는 것 과 마찬가지 로 스 크 립 트 는 설명 이 실행 되 기 전에 사전 컴 파일 처 리 를 합 니 다.
 
var mm = function(){ }
이러한 형식 은 하나의 변수 에 값 을 부여 하 는 것 입 니 다. 사전 컴 파일 도 하지만 mm 의 사전 변수 에 메모리 공간 을 할당 할 뿐 초기 화 되 지 않 았 습 니 다.
코드 1:
 alert(a);//    a   
 alert(b);//undefined
 alert(c);//JS  :“c”    
 function a()
 {
 
 }
 
 var b = function(){};

 
코드 2:
 func(); //2
 func = function() {alert(1);};
 func(); //1
 function func() {alert(2);};
 func(); //1

보 이 는 곳:
자 바스 크 립 트 는 완전히 순서대로 해석 하여 실행 하 는 것 이 아니 라 해석 하기 전에 자 바스 크 립 트 에 대해 '사전 컴 파일' 을 한 번 합 니 다.첫 번 째 방식 으로 정 의 된 함수 입 니 다. 자바 script 은 함수 정의 전에 사용 할 수 있 습 니 다.두 번 째 방식 으로 정 의 된 함 수 는 undefined 이기 때문에 미리 사용 할 수 없습니다.

좋은 웹페이지 즐겨찾기