Javascript 변수와 상수

L·2021년 4월 26일
0

이번에 JS에 대한 바닥부터 공부할겸 이번에는 JS의 변수와 상수에 대해 알아보고자 합니다.

변수

기본적으로 변수는 언제든 바뀔 수 있는 값을 말합니다. 특정한 이름에 특정한 값을 넣는데, 이때 특정한 값이 변하는것을 변수라고 이해하면 될꺼같습니다.

var name ='Tony Stark';
cosnoel.log(name);//Tony Stark
name = 'Steve Rogers'
cosnoel.log(name);//Steve Rogers

위에 코드와 같이 처음에 name이라는 변수명에 Tony Stark를 선언하고, 로그를 찍으면 Tony Stark가 나옵니다. 그 다음, 아래에 name 변수명에 데이터 값을 Steve Rogers로 변경을 합니다. 다시 로그를 찍으면 Steve Rogers가 나옵니다.

이 처럼, JS는 기본적으로 var(variable의 약자)를 이용해 변수를 선언합니다.

x= 'no name';
console.log(x);

여기서 결과는 is not defined라는 에러 메시지를 띄웁니다. 당연히 x라는 변수를 선언하지 않았기때문에 해당 에러가 발생을 하는것입니다.

JS의 자료형

Java에서처럼 숫자는 int, float,double 문자열은 char, 문자열객체는 String, 배열은 [], 객체는 new 객체이름() 이런 식으로 구분되어 선언하는 것과 다르게, var는 모든 데이터 타입형은 var 하나로 통일됩니다.

var number = 1;
var float = 3.14;
var string = 'javascript';
var object = {};
var array = [];
var boolean = true;
var function = function(){};
var _null = null;
var _undefined = undefined;

null, undefined의 차이점

사실 제일 보면서도 헷갈리는 개념이기도 했습니다. null과 undefined의 차이는 undefined는 해석하자면 정의하지않았다. 라는 뜻인데 값은 선언하였으나 선언한 변수에 값을 정해서 넣지 않았다라고 보시면 됩니다. null은 빈값 이라고 생각하면 될꺼같습니다. 아래 소스코드와 같이 a라는 변수에 할당한 값을 빈값인 null로 할당해서 값을 비워두는 거라고 보시면 됩니다.

var a = 11;
console.log(a);
a = null;
console.log(a);

상수

상수는 변하지 않고 항상 같은 값을 가지는 수 를 의미합니다. 즉, 값을 한번 할당하면 절대로 변경이 되서는 안되는 수입니다!
ES2015 이전에는 상수라는 개념이 등장하지않지만, ES2015이후에는 let와 함께 const라는 변수 개념이 등장했습니다.

우선 const는 한번 정의되면 절대 변경할수 없습니다.

const name = 'javascript';
name='nodejs';//Uncaught TypeError: Assignment to constant variable.

★ const가 유일하게 변경되는 사례가 하나있습니다. 바로 객체또는 배열안의 값을 변경하는것은 가능합니다.

const obj = {
name:'tony stark',
age:53
};

obj.name='steve rogers';
obj.name=105;

console.log(obj); // {name: "steve rogers", age: 105}

객체또는 배열 선언은 데이터의 주소값을 고정하는것이지, 안에 내용은 변경이 가능하다는것을 알 수 있습니다.

출처

0개의 댓글