본문 바로가기

IT Language/JavaScript

[javaScript] 데이터타입 / 반복문 for문

var

예전에는 자바스크립트의 변수 선언이 var로만 가능했었다. var로 변수 선언을 했을 시 중복 선언이 가능하다. 

이는 필요할 때마다 변수를 유연하게 사용할 수 있다는 장점이 될 수도 있지만, 기존에 선언해둔 변수의 존재를 잊고 값을 재할당하는 등의 실수가 발생할 가능성이 크다. 특히 코드량이 많아졌을 때, 같은 이름의 변수명이 여러 번 선언되었다면 어디 부분에서 문제가 발생하는지 파악하기 힘들뿐더러 값이 바뀔 우려가 있다.

let

ES6 개정으로 나온 변수 선언으로 var의 단점을 보완하기위해 나온 변수 선언 방식이다.

var와 다르게  let은 중복 선언 시 해당 변수가 이미 선언되었다는 에러 메세지가 출력된다 즉 중복 선언이 불가능하지만 변수 선언 및 초기화 이후 반복해서 다른 값을 재할당 할 수는 있다.

const

let과 const의 차이점은 immutable의 여부이다.let운 변수에 다른값을 재할당할 수 있지만,const는 재할당 시 에러 메세지가 출력된다 , const는 constant(상수)를 뜻하기 때문에 한번만 선언이 가능하며 값을 바꿀 수도 없다. 하지만 배열과 오브젝트 값을 변경하는 것은 가능하다.

var vs let vs const

변수 선언에는 기본적으로 const를 사용하고 let은 재할당이 필요한 경우에 한정해 사용하는 것이 좋다. 원시 값의 경우, 가급적 상수를 사용하는 편이 좋다. 그리고 객체를 재할당하는 경우는 생각보다 흔하지 않다. const 키워드를 사용하면 의도치 않은 재할당을 방지해 주기 때문에 보다 안전하다.

var와 let, 그리고 const는 다음처럼 사용하는 것을 추천한다.

  • ES6를 사용한다면 var 키워드는 사용하지 않는다.
  • 재할당이 필요한 경우에 한정해 let 키워드를 사용한다. 이때 변수의 스코프는 최대한 좁게 만든다.
  • 변경이 발생하지 않는(재할당이 필요 없는 상수) 원시 값과 객체에는 const 키워드를 사용한다. const 키워드는 재할당을 금지하므로 var, let 보다 안전하다.

변수를 선언하는 시점에는 재할당이 필요할지 잘 모르는 경우가 많다. 그리고 객체는 의외로 재할당을 하는 경우가 드물다. 따라서 변수를 선언할 때에는 일단 const 키워드를 사용하도록 하자. 반드시 재할당이 필요하다면(반드시 재할당이 필요한지 한번 생각해 볼 일이다.) 그때 const를 let 키워드로 변경해도 결코 늦지 않는다.

반복문 for문

for 문은 while 문과는 달리 자체적으로 초기식, 표현식, 증감식을 모두 포함하고 있는 반복문이다.

for (초기식; 표현식; 증감식) {
    표현식의 결과가 참인 동안 반복적으로 실행하고자 하는 실행문;
}

 

예제 ) 자바 스크립트로 국영수 점수를 입력 받아 총점과  평균을 디스플레이 하시오.  

 

 

예제 ) 자바스크립트 반복문을 사용하여 구구단을 출력하시오.

javaScript 구구단