javascript 역할 영역 과 역할 영역 체인 에 대한 간단 한 소개

13371 단어 JavaScript
역할 영역 과 역할 영역 체인 에 대한 간단 한 소개:
프로그램 언어 라면 역할 영역 은 피 할 수 없 는 문제 입 니 다. 다음은 사례 를 통 해 자바 script 의 역할 영역 과 역할 영역 체인 을 간단하게 소개 합 니 다.
javascript 에서 역할 영역 은 두 가지 로 나 뉜 다.
1. 전역 역할 영역
2. 국 지적 역할 영역.
어떤 역할 영역 인지 어떻게 정의 합 니까?
1. 모든 함수 이외 의 변 수 를 전역 작용 역 으로 정의 합 니 다.
2. 함수 안에 있 는 변 수 는 부분 적 인 역할 도 메 인 을 가지 고 있 으 며 그 역할 도 메 인 은 변수 가 있 는 함수 입 니 다.
특별 설명: 모든 마지막 에 직접 할당 을 정의 하 는 변 수 는 전체 역할 영역 을 가지 고 있 습 니 다.
작용 역 과 작용 역 사 이 는 층 층 이 포 함 될 수 있다.
전역 작용 역 은 국부 작용 역 을 포함 할 수 있 고 국부 작용 역 에 다른 국부 작용 역 을 삽입 할 수 있어 이렇게 무한 하 게 삽입 할 수 있다.
몇 개의 실례 를 나열 하여 개념 에 대한 이 해 를 깊이 있 게 하 다.
실례 1:
<script type="text/javascript">
 var x="    x";
 var y="    y";
   
 function myfunction()
 {
  var x="    x";
  var z="    z";
  alert(x);//  "    x"
  alert(y);//  "    y"
 }
   
 myfunction();
alert(z);//
</script>

상기 코드 에서 myfunction () 함 수 를 실행 할 때 '국부 변수 x' 와 '국부 변수 y' 를 각각 팝 업 할 수 있 습 니 다. 단 alert (z)내용 을 팝 업 할 수 없습니다. z 변 수 는 함수 에 정 의 된 부분 변수 이기 때문에 함수 체 외 에서 사용 할 수 없습니다. 위의 코드 에서 부분 변수 와 전체 변수 에 대해 기본 적 인 이 해 를 할 수 있 습 니 다. 특히 부분 변수 와 전체 변수 가 같 으 면 부분 변 수 는 전체 변 수 를 덮어 씁 니 다. 구체 적 인 원인 은 다음 에 소개 합 니 다. 인 스 턴 스 2:
<script type="text/javascript">
 var x="    x";
 var y="    y";
   
 function myfunction()
 {
  var x="    x";
  var z="    z";
  m="    m";
  alert(x);//  "    x"
  alert(y);//  "    y"
 }
 myfunction();
 alert(m);//  "    m"
</script>

상기 코드 에서 my function () 함 수 를 실행 할 때 '부분 변수 x' 와 '부분 변수 y' 를 각각 팝 업 할 수 있 습 니 다. alert (m) 는 '전역 변수 m' 를 팝 업 할 수 있 습 니 다. m 는 함수 내 에서 설명 하고 값 을 부여 하지만 var 키 워드 를 사용 하지 않 았 습 니 다. 변수 m 의 역할 영역 은 전역 입 니 다. 인 스 턴 스 3:
<script type="text/javascript">
 var x="    x";
 var y="    y";
   
 function myfunction()
 {
  var x="    x";
  var z="    z";
  m="    m";
  alert(x);//  "    x"
  alert(y);//  "    y"
  function innerfunction()
  {
    var xx="    xx";
    alert(xx);//  "    xx"
    alert(z);//  "    z"
  }
  innerfunction();
  alert(xx)//    
 }
 myfunction();
 alert(m);//  "    m"
</script>

상기 코드 에 서 는 함수 의 끼 워 넣 기, 즉 작용 역 의 끼 워 넣 기 를 실 현 했 습 니 다. 실행 결 과 는 일일이 소개 하지 않 습 니 다. 위의 원리 와 같 습 니 다. 특히 alert (xx) 가 내용 을 팝 업 할 수 없 는 이 유 는 xx 변수의 역할 역 이 innerfunction () 함수 이 고 my function () 이기 때 문 입 니 다.함수 와 전역 적 역할 에 대해 xx 변수 에 대한 설명 이 없습니다. 위의 몇 개의 인 스 턴 스 를 거 친 후에 역할 영역 에 대해 초보적인 이 해 를 가지 게 되 었 습 니 다. 다음은 자바 script 의 변수의 검색 체 제 를 소개 합 니 다. 왜 같은 이름 으로 보 이 는 부분 변수 가 전체 변 수 를 덮어 쓸 수 있 는 지 알 수 있 습 니 다. 인 스 턴 스 3 을 하나의 예 로 들 어 innerfunction () 함수 의 alert (z)문 구 는 이 럴 때 먼저 innerfunction () 함수 역할 영역 에서 찾 습 니 다. 존재 하지 않 으 면 my function () 함수 역할 영역 에서 찾 습 니 다. 있 으 면 변수 값 을 팝 업 하고 없 으 면 계속 위로 찾 습 니 다. 그러면 하나의 역할 영역 체인 이 형성 되 었 습 니 다. 특히 자바 script 에 서 는 블록 급 역할 영역 이 없습니다. 예 를 들 어 for 순환 문 구 는 하나의 역할 을 하지 못 합 니 다.
원문 주 소 는:http://www.51texiao.cn/javascriptjiaocheng/2015/0430/485.html
가장 원본 주 소 는:http://www.softwhy.com/

좋은 웹페이지 즐겨찾기