IT_Programming/JavaScript

자바스크립트 완벽가이드 - 6.7 do/while

JJun ™ 2010. 7. 4. 20:29


do/while 루프는 while 루프와 많은 점에서 비슷하다.

차이점이라면 루프 표현식이 테스트되는 곳이 루프의 처음이 아니라 마지막이라는 것이다.

 

따라서 언제나 적어도 한 번은 루프 몸체가 실행된다. 문법은 다음과 같다.

do
문장
while (표현식);


do/while 루프는 그 친척뻘인 while 루프만큼 자주 사용되는 편은 아니다.

왜냐하면 실제 코딩에서 최소 한 번 이상 루프를 실행해야 한다고 확신하는 경우를 만나기가 흔치 않기

때문이다. 다음에서 do/while 루프의 예를 살펴보자.

function printArray(a) {
if (a.length == 0)
document.write("Empty Array");
else {
var i = 0;
do {
document.write(a[i] + "<br>");
} while (++i < a.length);
}
}


do/while 루프와 일반적인 while 루프 사이에는 몇 가지 문법적인 차이가 있다.

무엇보다도 do 루프는 do 키워드(루프 시작을 표시)와 while 키워드 (루프의 끝을 표시, 또한 루프 조건도 명시) 둘 다를 필요로 한다. 또한, while 루프와는 달리 do 루프의 끝에는 세미콜론이 붙는다.

 

그 이유는 do 루프가 그저 루프 몸체의 끝을 알리는 중괄호만으로 끝나지 않고 루프 조건을 명시하며

끝나기 때문이다.