javascript 에서 두 가지 정의 함수 방식 의 차이 와 함수 의 사전 컴 파일 효과
904 단어 javascript 함수 사전 컴 파일
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 이기 때문에 미리 사용 할 수 없습니다.