20장 strict mode
·
Book/모던 자바스크립트 Deep Dive
20.1 strict mode란?function foo() { x = 10;}foo();console.log(x); // ?위의 코드를 보면 foo 함수 내에서 선언하지 않은 x변수에 값 10을 할당했다.이때 x 변수를 찾아야 x값에 할당할 수 있기때문에 자바스크립트 엔진은 x 변수가 어디에 선언됬는지스코프 체인을 통해 검색하기 시작한다.foo함수의 스코프에서 x변수 선언을 검색한다. 하지만 없으므로 상위스코프로 간다.전역 스코프에도 x 변수의 선언이 존재하지 않기때문에 ReferenceError를 발생시킬것같지만 암묵적으로전역객체에 x 프로퍼티를 동적 생성한다. 이러한 형상을 암묵적 전역이라한다.암묵적 전역은 오류를 발생시키는 원인이 크기때문에 반드시 var, let, const 키워드를 사용해야한다...