1. 조건문
자바스크립트의 조건문은 Java와 동일하게 if와 switch가 있습니다. 문법도 비슷하니 짧게 정리하도록 하겠습니다.
1) if 문
if (조건식) {
statements;
}
조건식이 참이면 { } 안의 문장들을 실행하게 됩니다. 자바와의 차이점이라면 조건식이 true, false가 명확하지 않더라도 가능하며 0, -0, "", '', NaN, null, undefined 은 false로 나머지는 true로 간주됩니다.
{ } 는 실행할 문장이 하나라면 생략할 수 있습니다.
if ('abc') {
console.log('abc'); // abc 출력됨
}
조건이 더 있다면 else if 로 추가할 수 있고 모든 조건에 맞지 않을 때 실행하기 위한 else 문도 있습니다.
if (조건식1) {
statements 1;
} else if (조건식2) {
statements 2;
} else {
statements 3;
}
2) switch 문
표현식 (if 문의 조건식)의 값이 범위가 아닌 명확한 값으로 여러 개를 가지고 그에 따라 분기해야 할 경우라면 switch 문을 사용하는 것이 좋습니다.
문법은 다음과 같습니다. 표현식이 case의 값과 일치하면 해당 statements를 실행하게 되며 break를 만나면 switch 문을 벗어나게 됩니다.
switch (표현식) {
case 값1 :
statements 1;
break;
case 값2 :
statements 2;
break;
default :
statements 3;
}
만약 break를 의도적으로 생략하게 되면 계속해서 그 다음 case 문의 statements 까지 실행하게 됩니다. 아래의 예제는 조건에 맞는 1을 출력한 후 2까지 출력하게 됩니다.
var x = 1;
switch (x) {
case 1 :
console.log(1);
case 2 :
console.log(2);
break;
default :
console.log('default');
}
default 문은 표현식이 모든 case에 일치하지 않은 경우 실행됩니다.
2. 반복문
자바스크립트의 반복문은 for 문과 와 while 문이 있습니다.
1) for 문
for 문은 2가지 방법으로 사용할 수 있는데, 그중 고전적인 방법의 문법은 다음과 같습니다.
for (초기화 ; 조건식 ; 증감식) {
statements;
}
1부터 10까지 더하는 예를 보면 다음과 같습니다.
var sum = 0;
for (var i = 1 ; i <= 10 ; i++) {
sum += i;
}
console.log(sum); // 55
초기화식, 조건식, 증감식 모두 optional이라 개별적으로 필요에 따라 생략 가능합니다. 극단적으로는 모두 생략하여 for ( ; ; ) 가 가능하며 이런 경우 statements에서 빠져나오지 못하면 무한 반복되게 됩니다.
2번째 방법은 for/in (자바에서는 for each)라고 부르는 방법으로 아래처럼 사용합니다.
for (변수 in 객체) {
statements;
}
배열의 각 요소를 더해서 문자열 (hello)를 만드는 예를 보도록 하겠습니다.
var chars = ['h', 'e', 'l', 'l', 'o'];
var hello = '';
for (var c in chars) {
hello += chars[c];
}
console.log(hello); // hello
2) while 문
while 문은 조건식이 true 인 동안 반복되며 for 문과 비슷하지만 초기화와 증감식이 없는 점이 다릅니다.
while (조건식) {
statements;
}
while 문으로 1부터 10까지 더하는 예는 다음과 같습니다.
var sum = 0;
var i = 1;
while (i <= 10) {
sum += i;
i++;
}
console.log(sum);
마지막으로 do ~ while 에 대해서 알아 보겠습니다.
while 문은 조건을 먼저 검사한 후 true 인 경우 statements를 진행하지만, do ~ while 은 statements를 진행한 후 조건을 검사하는 점이 다릅니다. while 문 뒤에 세미콜론(;) 이 있는 것도 잊지 마세요.
do {
statements;
} while (조건식) ;
이상으로 자바스크립트의 조건문, 반복문에 대해서 살펴봤습니다.
'Javascript' 카테고리의 다른 글
자바스크립트 연산자 및 우선순위 정리 (0) | 2017.03.07 |
---|---|
자바스크립트 변수 선언 및 기본 데이터 타입 (0) | 2017.03.06 |
Node.js로 파일을 읽어서 특정 부분 찾기 (0) | 2017.02.13 |
Node.js 설치 및 Sublime Text를 이용한 실행 (1) | 2017.01.30 |