변수 .. 변하는 수를 말하는 건감 .. ?
그렇다. 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 그 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름이다.
메모리는 데이터를 저장 할 수 있는 메모리 셀의 집합체이다. 1바이트 단위로 데이터를 저장하거나 읽어들인다.
각 셀은 고유의 메모리 주소를 갖는데, 이는 메모리 공간의 위치를 나타낸다.
당신들도 알겠지만, 컴퓨터는 0과 1밖에 모르기때문에 모든 데이터를 2진수로 처리한다.
연산의 경우, 임의의 위치(메모리 주소)에 기억(저장)되고 CPU는 이 값을 읽어들여 연산을 수행한다.
근데 직접 접근해서 읽으면 되지 왜 읽기만 해 .. ?
메모리 주소를 통해 값에 직접 접근하는 것은 오류를 발생시킬 가능성이 높은 매우 위험한 일이기 때문이다. (아주 예민한 아이일세 ... )
또, 코드가 실행될때마다 메모리 주소는 바뀐다. 그렇기 때문에 주소에 직접 접근하는 것도 옳지않다.
그러면, 변수는 하나의 값만 저장해 .. ?
아니다. 객체나 배열 같은 자료구조를 사용하면 여러 개의 값을 하나로 그룹화해서 하나의 값 처럼 사용할 수 있다.
이런 식으로 말이다.
var userId = 1;
var userName = "Sim";
var user = { id: 1,name: "Sim" };
var users = [
{ id: 1,name: "Sim" },
{ id: 2,name: "Lee" };
식별자도 변수인건가 ?
음 .. 변수의 이름을 식별자라고도 한다. 식별자의 정확한 의미는
어떤 값을 구별해서 식별할 수 있는 교유한 이름을 말한다.
더더 정확하게 말하자면, 메모리 주소에 붙인 이름이라고 할 수 있다.
식별자는 변수의 이름에서 제한되지 않고 변수, 함수 클래스 등 모두 식별자다.
'JavaScript' 카테고리의 다른 글
[모던 자바스크립트] 스코프 (0) | 2022.07.05 |
---|---|
[모던 자바스크립트] 함수 (0) | 2022.07.05 |
[모던자바스크립트] 원시값과 객체의 비교 (0) | 2022.07.04 |
[모던 자바스크립트] 객체 리터럴 (0) | 2022.07.04 |
[모던 자바스크립트] 프로그래밍 & 자바 스크립트란 (0) | 2022.06.21 |