javascript - 함수 선언과 선언된 변수가 동시에 존재하는 경우 승격 규칙은 무엇입니까?
高洛峰
高洛峰 2017-05-18 10:55:55
0
3
523

우리는 변수 선언이 승격된다는 것을 알고 있습니다:

으아악

동시에 함수 선언도 승격됩니다.

으아악

그렇다면 변수 선언과 함수 선언이 모두 있을 때, 누가 맨 위에 오를 것인가? 정렬하는 방법? 예:

으아악

그런가요?

으아악

"JAVASCRIPT You Don't Know"에서 이 문장을 보고 조금 혼란스러웠기 때문에:

함수 선언과 변수 선언이 승격됩니다. 그러나 주목할만한 세부 사항은 함수가 먼저 승격된 다음 변수가 승격된다는 것입니다. 함수 선언은 일반 변수보다 먼저 호이스팅됩니다.

그러면 다음과 같이 정렬됩니다:

으아악

정렬 규칙을 찾아보세요. 감사합니다!

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

모든 응답(3)
仅有的幸福

이 "개선 우선"이라는 말은 실제로는 표면적인 오해입니다. 사양은 특별한 순서가 없습니다(V8 구현에 관심이 있는 경우 여기에서 읽을 수 있습니다).

var 的提升是声明跟赋值分开,function 개선은 전체적인 개선이므로

으아악

이렇게 되겠지

으아악

그래서 기능이 먼저 승격되는 효과가 있습니다.

巴扎黑

우선 4가지 콘텐츠로 나눌 수 있어요

으아악

프로모션 후 정렬 형식이 어떤지 알고 싶습니다.
현재 알려진 조건은 변수 할당 이전에 변수 선언이 승격되므로 당분간 내부 순서에 관계없이 변수 선언을 처음 두 자리에 먼저 넣을 수 있다는 것입니다.

으아악

다음으로 선언 모듈과 할당 모듈의 내부 순서를 각각 결정해 보겠습니다.
실험을 수행하기 위해 foo 기능을 확장했으므로 현재 순서는 다음과 같습니다.

으아악

왜 이렇게 바꿨는지 걱정하지 마세요. 실험을 진행하면서 이해해 보도록 하겠습니다.
이해를 돕기 위해 실험은 2번에 걸쳐 진행되었습니다.
첫 번째: 변수 선언 모듈을 실험합니다.

으아악

그런 다음 변수 할당 모듈을 실험해 보겠습니다.

으아악

실험을 해보자:

으아악

실험 결과를 바탕으로 최종 순위 결과는 다음과 같습니다.

으아악
黄舟

으아아아

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!