이번에 진행할 주제로는 '변수의 개념부터 종류까지'입니다. 이번 포스팅을 통하여 변수가 무엇인지?, 변수의 종류에는 어떤 것이 있는지 알아보도록 할 것이며, 다음 포스팅에서는 '변수의 사용'에 대해서 다루어 볼 예정입니다. 제가 초보자이기에, 수준에 맞춰서 기초적인 내용만 다룰 것입니다. 


1. 변수의 개념

변수상자와 같은 공간으로, 우리는 평상시에 필요한 물건을 상자에 넣고 상자위에 이름을 적어놓으면 나중에 다시 꺼내거나 집어넣을 수 있습니다. 변수 또한 마찬가지로 상자와 같은 역할을 하는 공간을 변수라고 정의할 수 있습니다.


즉, 변수데이터를 담을 수(저장) 있는 공간이며, 넣었다가 뺄 수 있는 공간입니다.

- 게임을 만들 때 점소와 같이 값을 저장하는 용도로 사용

- 쇼핑몰에 담긴 물건들도 변수의 형태로 사용

- 사이트의 로그인 유무의 값으로 변수로 사용

- 특정 값을 추출해내기 위하여 사용

이외에도 여러 가지 형태로 사용이 가능합니다.


2. 변수의 정의

'var 변수이름 = 값;'

변수는 다음과 같이 정의할 수 있습니다. '변수이름'이라는 상자에 '값'을 넣어서 원할 때 집어 넣고 꺼내서 사용할 수 있습니다. var는 변수의 종류에서 다시 다룰 것이며, ; '콜론'에 대해서도 나중에 다시 다루도록 하겠습니다. 우선, 매 문장의 끝마다 ; '콜론'은 존재해야 합니다. =는 대입 연산자우측의 '값'이 '변수이름'으로 대입하도록 만들어 줍니다.


var age1 = 20;

var age2 = 30;

다음과 같이 'age1'이라는 변수와 'age2' 변수를 선언하여 각 각 값을 20, 30을 넣을 수 있습니다. 


var age1 = 20, age2 = 30;

다음과 같이 한줄로도 선언이 가능합니다. 아까와의 차이는 2줄이 아닌 1줄로 구성이 되었으며, var를 한번만 사용하여 선언을 할 수 있었습니다. 위의 방식들과 같이 각 각 선언이 가능하며, 한 번에 정의하여도 차이가 없습니다. 개인이 원하는 방식으로 작성이 가능합니다. 개인의 취향 차이 입니다.


3. 변수 이름의 조건

변수를 정의하기 위해서는 다음과 같이 조건을 지켜야 합니다.

- 숫자로 시작할 수 없다.

- 대소문자를 구분한다.

- 상수의 경우에는 대문자로 시작한다.

- 키워드는 사용이 불가능하다.


var 1num = 10;

변수의 이름은 숫자로 시작할 수 없으며, 에러를 발생하게 되며 실행이 되지 않습니다. 다음의 경우에는 var num1 = 10;과 같이 수정하여 사용해야 합니다. 



var num = 10;

var Num = 10;

또한, 대소문자를 구분합니다. 다음의 num과 Num은 같은 값을 저장하고 있지만, 다른 함수입니다. 지금은 두 함수 모두 10으로 대입되어 있지만, 만약 서로 다른 값을 저장한다면, num과 Num은 서로 다른 저장된 값을 출력하게 됩니다.


var age = 20;

var NAME = "name";

상수의 경우에는 대문자를 사용합니다. 꼭, 그렇게 해야 한다는 문법적 규칙은 없지만, 통상 그렇게 하기로 약속하였습니다. 상수의 경우에는 변경되어서는 안되는 값으로 나중에 또한 다루도록 하겠습니다.


break, case, catch, continue, default, delete, do, else, finally, for, function, if, in, 

instanceof, new, return, switch, this, throw, try, typeof, var, void, while, with

약속된 키워드는 사용이 불가능 합니다. 특정 목적을 위해서 변수와 같이 미리 정의해 놓은 키워드는 변수명으로 사용이 불가능합니다. 또한 이 키워드들은 모두 사용하는 것이 아니기에 꼭 외울 필요는 없습니다.


4. 변수 데이터의 위치

앞에서 다루었듯이 변수와 데이터의 순서는 정해져 있습니다.

var age = 20;

형 변수명 데이터

다음과 같이 변수 정의의 기본은 데이터형 변수명 = 데이터; 로 구성됩니다. 변수의 정의는 데이터가 데이터형인 변수로 대입(=)하라는 의미입니다. 타언어와 다르게 int, long 등등이 필요없이 var로 모든 자료의 형태로 구성이 가능합니다.


5. 데이터의 종류

변수에 저장할 수 있는 데이터의 형태는 대략 8가지 정도 가능합니다. 

- 숫자형(Number)

- 문자형(String)

- 논리형(Boolean)

- 특수형(undefined)

- 특수값(null)

- 함수(Function)

- 클래스(Class)

- 객체(Object)


var age = 20;

var height = 180.5;

숫자형(Number)으로 구성된 변수입니다. 숫자형은 정수, 실수, 16진수 등 사용할 수 있으며, 일상 사용하는 숫자들을 표현합니다. 숫자형 변수보통 게임에서는 체력과 점수 등 값들을 저장하며 쇼핑몰에서는 가격과 상품번호 등 숫자 값들을 위하여 사용합니다.


var name = "JavaScript";

var level = "초급";

문자형(String)으로 구성되었습니다. 문자형은 일상 생활에서 사용하는 단어와 같이 표현할 수 있습니다. 보통 문자형 변수는 홈페이지의 아이디와 상품명, 게임에서의 캐릭터 이름과 같은 곳에 사용됩니다. 결국 지금까지는 선언은 같지만 무엇을 집어넣냐의 차이입니다.


var isSleep = true;

var isEat = false;

논리형(Boolean)true(1)와 false(0)으로 구성될 수 있으며, 진실과 거짓처럼 잠을 잤거나, 먹었거나 유무를 판단할 수 있습니다. 보통 홈페이지에서는 로그인을 하였거나 게임에서는 살았거나 죽었거나 판단 할 때 사용되곤 합니다.


var age;

var Age = null;

특수형(undefined)과 특수값(null)입니다. 이 부분은 약간 난해할 수 있습니다. 결과적으로 말한다면 undefined는 변수 선언 시 기본 값이며, null은 객체를 담을 변수를 초기화 하는 것을 말합니다. 위의 경우에서는 age는 출력하면 undefined를 출력하며, Age는 null이라는 아무것도 없는 상태로 초기화됩니다. null은 아직 정의되지 않은 상태로, 0또는 공백과 다릅니다. 0은 숫자이며 공백은 '공백'문자입니다. 나머지 3개의 부분은 뒤에서 다루어보도록 하겠습니다.


+ Recent posts