JS 제어문

순차적으로 진행되는 실행 흐름을 변화시키는 문장을 제어문이라고 하며, 주어진 조건에 따라 코드 블록을 실행하거나 반복할 때 사용된다. 조건문과 반복문, 점프문이 있다.

블록문

  • 0개 이상의 문을 중괄호로 묶은 것
  • 코드 블록(블록)
  • 하나의 실행 단위로 취급
  • 세미콜론(;)을 붙이지 않는다.

조건문

  • if문의 경우 반드시 등호 3개로 일치비교를 해야 한다.

if…else문

1
2
3
4
5
6
7
if(조건식1){
// 조건식1이 참일 경우 실행될 코드 블록
} else if (조건식2){
// 조건식2가 참일 경우 실행될 코드 블록. 여러번 사용할 수 있다.
} else {
// 거짓일 경우 실행될 코드 블록
}
1
2
3
4
// 코드 블록 내의 문이 하나라면 중괄호 생략 가능하다.
if (조건식1) 실행될 문;
else if (조건식2) 실행될 문;
else 실행될 문;

switch문

  • 암시적 형 변환을 허용하지 않는다.
  • 값들을 비교할 때 자료형을 엄격하게 구분한다.
1
2
3
4
5
6
7
8
9
10
switch(표현식){
case 표현식1:
switch 실행될 문;
break;
case 표현식2:
switch 실행될 문;
break;
default:
일치하는 case문이 없을 때 실행되는 문;
}

반복문

for문

  • 증감식을 꼭 채울 필요는 없다.
  • 초기화 부분에서 생성한 변수는 for문의 지역변수이다. (for문 밖에서 변수를 사용하면 오류가 발생한다.)
  • 초기화 부분도 반드시 채울 필요는 없다. 단, for문의 가장 첫번째 세미콜론은 생략할 수 없다.
1
2
3
for (변수 선언문 또는 할당문; 조건식; 증감식) {
조건식이 참인 경우 반복 실행될 문;
}
1
2
// 아무 식도 선언하지 않으면 무한루프
for (;;) { ... }

주어진 높이(height)에 맞게 *로 삼각형을 그려주는 함수

1
2
3
4
5
6
7
function printTriangle(height) {
let message = '';
for (let i = 0; i < height; i++) {
message += '*';
console.log(message);
}
}

구구단

1
2
3
4
5
for(var i = 1; i < 10; i++) {
for(var j = 1; j < 10; j++) {
console.log(`${i} * ${j} = ${i * j}`);
}
}

for…in문

객체 안의 프로퍼티를 순회하는 문.

1
for (변수 in 객체 표현식) 실행할 문

while문

주어진 조건식의 평가 결과가 참이면 코드 블록을 계속해서 반복 실행한다. 조건문의 평가 결과가 거짓이 되면 실행을 종료한다.

1
2
3
while (불리언 표현식) {
실행될 문;
}
1
2
3
// 무한루프
while (true) { … }
}

홀수만 출력하는 함수

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// 방법1
let i = 1;

while (i <= 100) {
if (i % 2 === 1) {
console.log(i);
}
i++;
}

// 방법2
let i = 1;

while (i <= 50) {
console.log(i * 2 - 1);
i++;
}

// 방법3
let i = 1;

while (i <= 100) {
console.log(i);
i += 2;
}

정수의 약수를 모두 출력하고 총 몇 개의 약수가 있는지 출력

1
2
3
4
5
6
7
8
9
10
11
12
13
14
const N = 180;
// 여기에 코드를 작성해 주세요.
let i = 1;
let count = 0;

while (i <= N) {
if (N % i == 0) {
console.log(i);
count++;
}
i += 1;
}

console.log(`${N}의 약수는 총 ${count}개입니다.`);

구구단

1
2
3
4
5
6
7
8
9
let i = 1;
while (i <= 9) {
let j = 1;
while (j <= 9) {
console.log(`${i} * ${j} = ${i * j}`);
j++;
}
i++;
}

do…while문

코드블록을 한번 이상 실행하고 조건식을 평가한다.

1
2
3
do {
실행될 문;
} while (불리언 표현식);

점프문

라벨문

문장에 라벨을 붙이면 break문이나 continue문을 실행한 후에 점프할 수 있는 위치가 된다. 실질적으로 사용할 수 있는 곳은 switch문과 반복문.

1
라벨 이름: 실행될 문;

break문

  • 레이블문, 반복문, switch문의 코드블록을 탈출한다. 그 이외에 사용하면 문법 에러 발생.
  • 라벨을 지정한 break문 실행시 break문과 라벨 사이에 줄바꿈이 있으면 안된다.
    1
    break;
    1
    break 라벨 이름;

continue문

  • 코드 블록 실행을 현지점에서 중단후 반복문의 증감식으로 이동한다.
  • 라벨 지정 여부와 관계 없이 반복문 안에서만 사용 가능.
    1
    continue;
    1
    continue 라벨 이름;

throw문

1
throw 표현식;

return문

1
return;

REFERENCE
https://poiemaweb.com

  • © 2020-2025 404 Not Found
  • Powered by Hexo Theme Ayer