본문 바로가기

Front-End/JavaScript

JavaScript #6 (반복문 - while, break/continue)

반응형

구문

while (조건) : 조건이 참인 동안 반복
do { 실행문 } while (조건): 조건과 상관없이 1회는 무조건 실행

 

- 조건을 이상하게 걸면 무한 반복에 빠질 수 있으니 주의.

 

 

예문

// 숫자를 입력 받아 계속 출력, exit 입력 시 중지

let num = prompt("숫자 입력");
while (num !== "exit") {
    num = prompt("숫자 입력");
    console.log(num)

 

 

실습

// 사용자가 입력한 숫자까지 1씩 증가하면서 출력해보세요.

let num = prompt("숫자 입력");
let i = 1;
while (i <= num) {
    console.log(`${i}`);
    i++;
}

 

연습 문제 - 팩토리얼 계산기

// 팩토리얼 계산기
// n! = n * (n - 1) * (n - 2) * ... * 1

let num = prompt("숫자 입력");
let result = 1;
while (num > 0) {
    result *= num;
    num--;
}
console.log(result);

 

 

 

  • break: 반복문 강제 종료
  • continue: 이후 코드 무시하고 다음 반복으로 넘어감

 

예문

// 1~10 중 짝수 합 계산

let sum = 0;
for (let i = 1; i <= 10; i++) {
  if (i % 2 !== 0) continue;
  sum += i;
}
console.log("짝수의 합:", sum);

 

총 합은 0으로 일단 초기값으로 지정. i는 1부터 시작해서 10까지, 순차대로 증가.

조건은 2로 나누었을 때 나머지가 0이 아닌 경우 "총 합에 더하지 않고" 계속 진행하며,

조건이 아닌 (2로 나누었을 때 나머지가 0) 경우, 총 합에 누적시킴.

→ 한 마디로 홀수는 패스하고 짝수만 더함.

 

 

실습

let i = 1;
while (i <= 10) {
    if (i === 5) break;
    if (i === 3) {
        i++;
        continue;
    }
    console.log(`>>>${i}`);
    i++
}

 

i 는 1부터 시작해서 10 까지 반복해서 출력을 해야 하지만, 

조건으로 5일 때 출력없이 멈춰야 하는데, 중간에 3에서 출력하지 않고 다음(4)으로 넘어가서 실행.

결과는 1, 2, 4만 나오게 된다.

 

 

 

 

 

※ do ~ while 문 : 조건과 상관없이 1회는 무조건 실행

let i = 0; 
do {
    console.log(i); 
    i++;
} while (i < 5);

 

 

 

 

 

 

 

반응형