JS 와 블록 역할 영역

1004 단어
JS 에 블록 역할 영역 이라는 개념 이 없 기 때문에 다음 코드 의 i 는 전체 환경 에서 방문 할 수 있 습 니 다. 그러나 이러한 단점 이 있 습 니 다. 전체 환경 을 오염 시 켰 습 니 다. 대형 프로젝트 에서 변수 충돌 을 초래 할 수 있 기 때 문 입 니 다.
for(var i=0;i<5;i++){
    console.log(i)
}

그러나 JS 에는 블록 역할 영역의 기능 을 실현 할 수 있 는 문장 이 있다.
JS 에서 블록 역할 영역 효과 의 실현:
  • with
  • var obj={
        a:4,
        b:5
    };
    with(obj){
        a=5;
        b=4;
    }
    console.log(obj);
    
  • try / catch try / catch 의 catch 분 구 는 하나의 역할 영역 을 만 듭 니 다:
  • try{
        
    }catch (err){
        console.log(err)
    }
    

    위 코드 의 err 는 catch 문장 에서 만 접근 할 수 있 습 니 다.
  • let / const ES6 에 두 개의 성명 변 수 를 추가 하 는 방식 입 니 다. let 와 const. 이 두 가지 방식 으로 성명 한 변 수 는 임의의 역할 영역 에 연결 되 어 있 습 니 다. 보통 {...} 의 내부 입 니 다. 두 가지 차이 점: let 성명 의 변 수 는 수정 할 수 있 고 const 는 수정 할 수 없습니다.
  • IIFE 즉시 실행 함수 도 변 수 를 함수 역할 영역 에 밀봉 하 는 역할 을 하여 전체 환경 오염 을 방지 할 수 있 습 니 다.
  • (function () {
        for(var i=0;i<5;i++){
            console.log(i)
        } 
    })()
    

    좋은 웹페이지 즐겨찾기