On this page
JavaScript 변수
수정하기
문서 생성 2021-04-28 11:20:52 최근 수정 2022-12-20 23:24:53
On this page
변수란?
메모리는 데이터를 저장할 수 있는 메모리 셀의 집합이고 이 메모리 셀 하나의 크기는 1바이트(8비트)이다. 즉 컴퓨터는 메모리 셀의 크기, 1바이트 단위로 데이터를 저장하거나 읽는다.
각 셀은 고유의 메모리 주소를 갖는데 메모리 공간의 위치를 나타내며 0부터 시작해 메모리의 크기만큼 정수로 표현된다.
이 메모리에 저장된 데이터를 다시 사용하려면 메모리 주소를 통해 데이터에 접근해야 한다. 그래서 변수를 통해 접근을 하는데 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간, 또는 그 공간을 식별하기 위해 붙인 이름을 뜻한다.
변수는 프로그래밍 언어의 컴파일러 또는 인터프리터에 의해 값이 저장된 메모리 공간의 주소로 치환이 되서 실행된다.
식별자
- 함수, 프로퍼티, 함수 매개변수의 이름을 말한다.
- 구별해서 식별할 수 있는 고유한 이름이다.
- 첫 문자는 반드시 글자나 밑줄(
_
), 달러 기호($
) 중 하나여야 한다.
네이밍 컨벤션
var calmelCase; // 카멜 케이스var snake_case; // 스네이크 케이스var PascalCase; // 파스칼 케이스// 헝가리언 케이스var typeHungarianCase; // type + identifiervar el = document.getElementById('id');
- 일반적으로 변수나 함수 이름은 카멜 케이스, 생성자 함수, 클래스의 이름은 파스칼 케이스를 사용한다.
변수 선언하기
var
,let
,const
키워드를 사용한다.
var
var i, sum;var message = 'hello';
var
로 변수를 선언한 후 초기 값을 지정하지 않으면 값이 설정될 때까지undefined
가 할당된다.
변수 이름은 어디에 등록되나?
- 변수 이름을 비롯한 모든 식별자는 실행 컨텍스트에 등록된다.
- 실행 컨텍스트(Execution Context): 자바스크립트 엔진이 소스코드를 평가하고 실행하기 위해 필요한 환경을 제공하고 코드의 실행 결과를 실제로 관리하는 영역
변수에 값 할당하기
var message = 'hi';message = 'hello';
- 변수에 값을 재할당하면 변수의 값이 변경된다.
- 하지만 이전에 있던
hi
가 저장된 메모리 공간을 지우고 거기에hello
를 넣는 것이 아니라 새로운 메모리 공간을 확보해 거기에hello
를 저장하는 것!- 기존에 저장되어 있던 메모리 공간은 어떤 식별자와도 연결되지 않게 된다. → 가비지 콜렉터에 의해 메모리에서 자동 해제된다.