JAVA
[JAVA, JS]프로그램 변수란?
때래뚫
2023. 7. 5. 19:45
프로그램 변수란?
- 프로그램 변수란 하나의 저장공간을 뜻합니다. 예를 들어 아래와 같이 변수를 선언한다면
// JAVA
int a = 1;
// JS
var a = 1;
JAVA는 정수형 데이터만 담을 수 있는 박스에 1을 담은 것이고,
JS는 동적인 언어이므로 우선 1을 담는 동시에 데이터 타입을 지정합니다.
이것을 사진으로 표현하면 이렇습니다.

여기서 중요한 변수의 특징이 나옵니다. 바로 값과 변수명이 1개밖에 있지 못한다는 것입니다.
만약 아래 코드처럼 선언하면 위 그림은 어떻게 변할까요?
// JAVA
int a = 1;
a = 2;
// JS
var a = 1;
a = 2;

보시다 싶이 원래 선언되있던 1의 값은 없어지고, 해당 변수의 메모리에 2라는 정수형 값이 들어가게 됩니다.
또한 위 코드를 보시면 한번 선언한 변수는 다음번에 작성할 때 앞의 타입명을 제외하지 않으면 안됩니다.
그러나 변수에 숫자가 아닌 다른 타입(문자,참/거짓)등이 들어가면 어떻게 될까요? 여기서부터 JS와 JAVA의 차이점이 나타납니다.

자바는 변수를 선언할 때 타입명을 먼저 선언합니다. 때문에 다른 타입의 데이터를 삽입하려하면 컴파일 오류가 발생하게됩니다. 하지만 JS는 들어오는 데이터에 따라 변수의 타입을 치환하기 때문에 그저 데이터가 변경될 뿐입니다.
이러한 여러가지 특징을 한번에 정리하겠습니다.
1. 변수란 데이터를 담는 박스같은 존재이다.
2. 한 변수에는 한번에 하나의 데이터만 존재한다.
3. 한번 선언한 변수는 다음에 부를 때 앞의 타입명이 존재하지 않아야한다.
다른 특징들도 많지만 대표적으로 생각나는 세가지를 적어보았는데요, 다음번엔 지역변수와 전역 변수에 대해 여러가지 케이스를 다뤄보겠습니다.