15.1 var 키워드로 선언한 변수의 문제점 15.1.1 변수 중복 선언 허용 var로 선언한 변수는 중복 선언이 가능 중복 시 의도치 않게 먼저 선언된 변수의 값이 변경되는 부작용이 발생됨 var x = 1; var x = 405; console.log(x); // 405 15.1.2 함수 레벨 스코프 var로 선언한 변수는 함수의 코드 블록만을 지역 스코프로 인정 var로 선언한 변수는 코드 블록 내에서 선언해도 모두 전역 변수가 됨(if, for 등) var x = 1; if(true) { var x = 10; } console.log(x); // 10 15.1.3 변수 호이스팅 var로 선언한 변수는 호이스팅에 의해 변수 선언문이 스코프의 선두로 끌어 올려진 것처럼 동작함. 변수 선언문 이전에 ..