1. 적용 범위
1.1 범위 개요
일반적으로, 이름을 사용하는 프로그램의 코드는 항상 효과적이고 사용할 수 없습니다. 그리고이 범위에 주어진 코드 이름이 이름의 범위의 가용성이다.
로컬 로직 프로그램을 개선하기 위해 범위를 사용합니다. 프로그램, 갈등을 줄이는 이름의 신뢰성을 향상.
< 헤드 > < 메타 캐릭터 = "UTF-. 8" > < 메타 이름 = "뷰포트" 내용 = "폭 = 폭있어서, 초기 스케일 = 1.0" > < 타이틀 > 문서 </ 타이틀 > < 스크립트 > // JS 범위 : 그것은 특정 범위 및 신뢰성을 향상 및 프로그램 이름 충돌을 줄이는 것을 목표로 작업 프로그램의 효과 성 안에있는 코드 (변수) 이름은 // JS는 (ES6) 전에 전역 및 로컬 범위로 스코프 / / . 1. 전체 스크립트 태그 전역 또는 별도 JS 파일 보유 VAR의 NUM = 10 ; CONSOLE.LOG (NUM) // 10 //함수 내부 2. 로컬 범위 함수 내의 코드의 로컬 범위의 이름 만 일 함수 FN () { // 로컬 스코프 VAR의 NUM = 0 ; CONSOLE.LOG (NUM); // 0 } FN ( ); </ 스크립트 > </ 헤드 >
2 변수 범위
변수 범위의 2.1 분류
JavaScript의 가변 범위에 따라 두 가지로 구분 될 수있다 :
1. 전역 변수
2. 지역 변수
< 헤드 > < 메타 캐릭터 = "UTF-. 8" > < 메타 이름 = "뷰포트" 내용 = "폭 = 폭있어서, 초기 스케일 = 1.0" > < 타이틀 > 문서 </ 타이틀 > < 스크립트 > // 우리는 다른 글로벌 및 로컬 변수에 변수를 범위 // 스크립트 탭 또는 문서 전체에 걸쳐 1 개 전역 변수는 JS를 사용할 수 있습니다 // 참고가이 상황의 함수 내 직접 할당 문 없지만 전역 변수에 속하는해야하는 경우 함수는 효율적으로 실행 된 후에 VAR의 NUM = 10 ; // 글로벌 변수 CONSOLE.LOG (NUM) 함수 FN () { CONSOLE.LOG (NUM) } FN (); // 로컬 변수의 2 개 변수는 로컬 범위 // 가변 파라미터의 함수가 로컬 유의 함수 펀 () { // 로컬 변수 밖에 사용할 수 없다 VAR의 합 = 0 ; SUM2 = 20 ; } // 펀 (); CONSOLE.LOG (SUM2); // 글로벌 및 로컬 변수는 성능 관점에서 // 브라우저는 전체 메모리 자원의 비교를 폐쇄 1. 글로벌 변수 만 파괴 될 // 2. 지역 변수 우리는 프로그램이 메모리 자원을 절약 할 수있는 파괴를 비교합니다 완료 </ 스크립트 > </ 머리 >
JS는 범위 수준 막지 만 스위프트 또는 OC {} 변수 범위 선언의 블록 레벨 범위 ES6 예 후 중괄호 블록 레벨의 범위이다.
그러나 JS는 ES6하지 전에.
3 범위 체인
만큼 적어도 범위 코드가로
함수의 로컬 범위 내에서 서면
이 함수는이 범위 내에서 기능뿐만 아니라 범위의 탄생이있는 경우
내부 기능에 따른 외부 데이터 메커니즘 함수 호출 찾기 내부 체인 될 수있는 변수 기능에 액세스 할 수는 범위 체인 방문 결정