원리: 함수 및 변수 선언은 함수의 최상위로 승격됩니다.
결과: 변수와 함수 모두 먼저 시도한 후 선언을 지원합니다.
Case:
//变量提升x = 5; // 变量 x 设置为 5alert(x);var x; // 声明 x//函数提升print(5); //调用函数function print(y) { //声明函数 return y * y;}
Principle: 함수 내에 다른 함수를 중첩합니다(다른 함수는 클로저입니다)
결과:
js에는 정적 변수가 없습니다. 함수 내에서 선언된 로컬 변수를 로컬 변수로 사용할 수 있습니다.
로컬 변수가 한 번만 호출되도록 하려면 어떻게 해야 할까요? 호출이 가장 많습니다. 외부 함수의 경우 클로저는 나중에 호출됩니다
다른 함수가 이를 수정하는 것을 방지합니다(다른 함수는 마음대로 전역 변수를 수정할 수 있습니다)
사례:
function count() { var counter = 0; return function () {return counter += 1;}} var add= count();add(); add();//值为二
관련 권장 사항:
JavaScript에서 함수와 변수의 존재를 확인하는 방법에 대한 자세한 코드 예제
JavaScript 기본 지식 요약(10) 클로저, 함수의 즉시 실행
위 내용은 js 함수 및 변수의 승격 및 종료에 대한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!