15장 let, const 키워드와 블록레벨 스코프
·
Book/모던 자바스크립트 Deep Dive
15.1 var 키워드로 선언한 변수의 문제점15.1.1 변수 중복선언 허용var 키워드로 선언한 변수는 중복선언이 가능하다.var x = 1;var y = 1;var x = 100;var y; // 초기화문이 없는건 무시console.log(x); // 100console.log(y); // 1중복선언, 값할당됬다면 의도치않게 먼저 선언된 변수값이 변경되는 부작용이 발생한다.15.1.2 함수 레벨 스코프var 키워드로 선언한 변수는 오직 함수블록만을 지역스코프로 인정한다.var x = 1;if(true) [ var x = 10;}console.log(x); // 10코드블록내에서는 모두 전역변수가 되므로 값이 변경되었다.15.1.3 변수호이스팅console.log(foo) // undefinedfoo ..
4. 변수
·
Book/모던 자바스크립트 Deep Dive
4.1 변수란 무엇인가? 왜 필요한가?컴퓨터는 연산과 기억을 수행하는 부품이 나눠져있다.CPU를 사용해 연산하고 메모리를 사용해 데이터를 기억한다.또한 메모리에 저장되는 모든값은 2진수로 저장된다. (1바이트단위,8비트로 데이터를 read write함)메모리주소를 통해 직접 값에 접근하는 방법은 올바르지않기때문에메모리에 저장된 값을 변수로 가져올수있다.이게 바로 변수이다. 즉 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체이다.변수를 선언변수를 할당 (대입, 저장)변수를 참조자바스크립트 엔진은 변수명 메핑된 메모리주소를 통해 접근해 저장된값을 반환한다. 4.3 변수 선언var score; // 변수 선언, var 키워드 자바스크립트 엔진은 키워드를 만나면 자신이 수행해야 할 약속된 동작을 수행..