[JavaScript] 자바스크립트 do-while문 사용법 & 예제 정리
- Web/JavaScript
- 2024. 2. 18.
do-while 문은 코드 블록을 한 번 실행한 후에 조건을 만족하면 코드 블록을 재 실행하는 반복문입니다. 따라서 do-while 문은 최소한 한 번은 코드 블록은 무조건 실행하고 조건에 따라서 반복 수행할지 여부를 결정합니다. 이번 포스팅에서는 자바스크립트의 do-while 문에 대해 알아보겠습니다.
※ while문이 궁금하시다면 아래 글을 참고해 주세요.
[JavaScript] 자바스크립트 while문 사용법 & 예제 정리
do-while 문 사용법
do {
// 실행될 코드 블록
} while (조건);
위의 예제는 do-while 문의 기본형입니다. 여기서 조건은 불리언(boolean) 값으로 표현될 수 있는 식을 말하며 먼저 블록을 실행한 뒤 마지막에 조건이 true라면 중괄호 { } 안의 코드 블록이 다시 한번 실행되고 이를 조건이 만족하는 한 계속해서 반복합니다.
※ do-while과 while문의 차이점
while문의 경우에는 조건식의 만족 여부를 먼저 검사한 후 중괄호에 있는 코드의 실행여부를 결정하는데 비해 do while문은 반드시 한 번은 코드를 실행하고 조건식을 검사한다는 차이점이 있습니다.
do-while의 실행 순서
- { } 중괄호 안의 코드 블록을 실행합니다.
- 코드 블록이 실행된 후에 while 키워드 뒤에 조건식을 평가합니다.
- 조건이 참인지 여부에 따라 반복이 코드 블록의 로직을 반복 실행할지 결정합니다.
- 조건이 true인 경우: 코드 블록을 다시 실행하고, 조건도 다시 검사합니다.
- 조건이 false인 경우: do-while문을 종료하고 다음 코드로 이동합니다.
do-while 문 예제
See the Pen do-while by wjdxo513 (@wjdxo513) on CodePen.
do-while문을 사용해서 구구단을 출력해 보았습니다. 먼저 구구단을 한번 출력한 뒤 idx값이 10보다 클 때까지 반복해서 구구단을 출력합니다.
do-while 사용시 주의사항
let i = 0;
do {
console.log(i);
// i를 업데이트하는 부분이 빠져있으면 무한 루프에 빠질 수 있음
} while (i < 5)
do-while 문을 사용할 때는 코드 블록을 최소한 한 번은 실행해야 하는 상황에서 사용하는 것이 적절합니다. 또한 조건식을 빠져나갈 수 있도록 하여 무한 루프에 빠지지 않도록 주의하셔야 합니다. 특히 비교하는 조건이 코드블록 안에서 업데이트되지 않으면 항상 같은 값을 비교하게 되어 무한루프에 빠지게 됩니다. 예를 들어 위의 예제에서 i++; 를 빠트렸다면, i의 값은 항상 0으로 유지되어 무한 루프에 빠지게 되겠습니다.
do-while문에서의 break와 continue
break - 반복문 탈출
- break 문은 루프를 즉시 종료하고 루프 외부로 빠져나가게 합니다.
- break가 실행되면 루프 조건의 판별 여부와 상관없이 루프가 종료됩니다.
- 주로 특정 조건이 충족되었을 때 루프를 종료하고자 할 때 사용됩니다.
See the Pen do-while break by wjdxo513 (@wjdxo513) on CodePen.
위의 예제를 보시면 idx값이 5보다 크면 break문이 실행되어 do-while 반복문을 탈출하여 5까지만 출력되는 것을 보실 수 있습니다.
continue - 반복문 건너뛰기
- continue 문은 현재 반복을 중단하고 다음 반복으로 진행합니다.
- continue가 실행되면 이후의 코드는 실행되지 않고 다음 반복의 시작 지점으로 이동합니다.
- 특정 조건일 때 현재 반복을 건너뛰고자 할 때 사용됩니다.
See the Pen do-while continue by wjdxo513 (@wjdxo513) on CodePen.
위의 예제를 보시면 idx값이 짝수(2로 나눈 나머지가 0)면 continue문이 실행되어 do-while 반복문을 건너뛰어 홀수만 출력되는 것을 보실 수 있습니다.
'Web > JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트 forEach문 사용법 & 예제 정리 (4) | 2024.02.20 |
---|---|
[JavaScript] 자바스크립트 for문 사용법 & 예제 정리 (2) | 2024.02.19 |
[JavaScript] 자바스크립트 while문 사용법 & 예제 정리 (2) | 2024.02.17 |
[JavaScript] 자바스크립트 switch문 사용법 & 예제 정리 (2) | 2024.02.16 |