JS 변수 향상 및 함수 향상 실례 분석

1.js 에서 두 가지 역할 영역 만 있 습 니 다.
a:전역 역할 영역
b:함수 역할 영역
ES6 이전에 js 는 블록 급 역할 영역 이 없 었 다.
우선 블록 급 역할 영역 이 없 는 것 이 무엇 인지 설명해 주 시 겠 습 니까?

그래서 이 때 는 출력 변수 a 를 출력 할 수 있 는 값 입 니 다.
2:변수 향상 이란 무엇 입 니까?
우리 js 에서 코드 의 실행 시간 은 두 단계 로 나 뉘 어 집 니 다.1.예비 해석 2.한 단계 씩 실 행 됩 니 다.
예비 분석 단계:우선 전역 역할 영역 에서 js 해상도 기 는 모든 var,function,파 라 메 터 를 찾 고 현재 역할 영역 맨 위로 앞 당 겨 집 니 다(변수의 할당 작업 이 앞 당 겨 지지 않 고 원래 있 는 곳 에 있 습 니 다).이때 코드 가 실행 되 지 않 았 습 니 다.
그리고 한 줄 한 줄 실행 코드 를 시작 합 니 다.함수 호출 을 만 났 습 니 다.그래서 함수 역할 영역 에 들 어가 서 두 단계 로 나 누 어 걷 기 시 작 했 습 니 다.1.예비 해석 2.한 단계 씩 실 행 했 습 니 다.이런 식 으로 유추 하 다.
그러면 변수 향상 은 변수 성명 이 작용 역 의 맨 위로 올 라 가 는 것 이다.즉,이 변 수 는 작용 역 의 어느 곳 에서 성명 하 든 작용 역 의 맨 위로 올 라 갈 것 이다.
즉,변 수 는 성명 하기 전에 사용 할 수 있 습 니 다.값 은 undefined 입 니 다.

그러면 위의 이런 문법 은 사실 아래 의 이런 문법 과 같다.

몇 가지 예 를 보면:

위의 예 를 약간 변경 하 다.
결 과 는 크게 달라 질 것 이다.

예 를 하나 더 보 자.

3:함수 향상 이란 무엇 입 니까?

출력 결 과 는:

메모:함수 성명 식 은 함수 의 성명 과 정 의 를 함께 작용 역 의 맨 위로 올 립 니 다.
함수 표현 식 성명 함수

예:

출력 결 과 는:

마지막 요약:
1:모든 성명 은 역할 영역의 맨 위로 올 라 갑 니 다.
2:같은 변 수 는 한 번 만 설명 하고 다른 변 수 는 무시 합 니 다.
3:함수 성명 의 우선 순 위 는 변수 가 설명 한 우선 순위 보다 높 고 함수 성명 과 함수 정의 부분 이 함께 향상 되 었 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기