자바스크립트를 다시 공부하던 중 컴파일러 강의에서 자주 듣던 용어들이 보여서 새로 정리한다. 스코프 자바스크립트는 함수 레벨 스코프(Function level scope)를 사용한다. 일반적으로 사용하는 블록 레벨 스코프(Block level scope)와는 다르다. 예시 function f() { if (true) { var x = 0; } console.log(x); //0 출력 } 다음과 같이 함수 레벨 스코프는 말 그대로 스코프가 블록이 아니라 함수이다. 자바스크립트에서 블록 레벨 스코프를 이용하기 위해서는 var 대신 let이나 const를 사용하면 된다. 또 자바스크립트는 렉시컬 스코프(lexical scope)를 가진다. 렉시컬 스코프란 스코핑에 있어서 함수의 호출 위치가 아닌 선언 위치를 ..