본문 바로가기
📙 자바스크립트 공부

[js] 변수와 상수

by 따따시 2022. 11. 4.

1. 달러 기호 '$' 와 밑줄 '_' 를 변수명에 사용할 수 있다. 이 특수 기호는 일반 글자처럼 특별한 의미를 지니진 않는다.

 

아래는 유효한 변수명

let $ = 1; // '$'라는 이름의 변수를 선언
let _ = 2; // '_'라는 이름의 변수를 선언

alert($ + _); // 3

아래는 잘못된 변수명의 예시

let 1a; // 변수명은 숫자로 시작해선 안된다.

let my-name; // 하이픈 '-'은 변수명에 올 수 없다.
 
2. 대·소문자 구별

apple와 AppLE은 서로 다른 변수다.

 

3. 예약어는 변수명으로 사용할 수 없다

 

예약어(reserved name) 목록에 있는 단어는 변수명으로 사용할 수 없다.

이 단어들은 자바스크립트 내부에서 이미 사용 중이기 때문!

예약어 예시: let, class, return, function

 

상수

변화하지 않는 변수를 선언할 땐, let 대신 const를 사용한다.

const myBirthday = '18.04.1982';

이렇게 const로 선언한 변수를 '상수(constant)'라고 부른다.

상수는 재할당할 수 없으므로 상수를 변경하려고 하면 에러가 발생한다.

const myBirthday = '18.04.1982';

myBirthday = '01.01.2001'; // error, can't reassign the constant!

변숫값이 절대 변경되지 않을 것이라 확신하면, 값이 변경되는 것을 방지하면서 다른 개발자들에게 이 변수는 상수라는 것을 알리기 위해 const를 사용해 변수를 선언하라구 한당

 

대문자 상수

기억하기 힘든 값을 변수에 할당해 별칭으로 사용하는 것은 널리 사용되는 관습이라고 한다. 

이런 상수는 대문자와 밑줄로 구성된 이름으로 명명한다. 

 
const COLOR_RED = "#F00";
const COLOR_GREEN = "#0F0";
const COLOR_BLUE = "#00F";
const COLOR_ORANGE = "#FF7F00";


let color = COLOR_ORANGE;
alert(color); // #FF7F00

 

대문자로 상수를 만들어 사용하면 다음과 같은 장점이 있다.

  • COLOR_ORANGE는 "#FF7F00"보다 기억하기가 훨씬 쉽다.
  • COLOR_ORANGE를 사용하면 "#FF7F00"를 사용하는 것보다 오타를 낼 확률이 낮다.
  • COLOR_ORANGE가 #FF7F00보다 훨씬 유의미하므로, 코드 가독성이 증가한다.

그렇다면 언제 일반적인 방식으로 상수를 명명하고, 언제 대문자를 사용해서 명명해야 하는 걸까? 

'상수’는 코드가 실행되기 전에 이미 그 값을 알고 있는 상수도 있고,

런타임 과정에서 계산되지만 최초 할당 이후 값이 변하지 않는 상수도 있다.

예시:

const pageLoadTime = /* 웹페이지를 로드하는데 걸린 시간 */;

pageLoadTime의 값은 페이지가 로드되기 전에는 정해지지 않기 때문에 일반적인 방식으로 변수명을 짓는다.

하지만 이 값은 최초 할당 이후에 변경되지 않으므로 여전히 상수이다.

 

요약

var, let, const를 사용해 변수를 선언할 수 있다.

  • let – 모던한 변수 선언 키워드
  • var – 오래된 변수 선언 키워드 -->  잘 사용하지 않습다고 한다! 
  • const  let과 비슷하지만, 변수의 값을 변경할 수 없당 (상수)

 

* [참조] 해당 내용은 아래 사이트에 올라온 내용을 복습하며 타이밍해온 것에 가까운 글 ! (나의 복습용 노트)

https://ko.javascript.info/variables

 

변수와 상수

 

ko.javascript.info

 

댓글