모던 JavaScript 튜토리얼을 따라가면서 정리합니다.
2.13. while과 for 반복문
while
- 반복문 본문이 한 번 실행되는 것을 반복(iteration)이라고 한다.
- 브라우저는 무한 반복을 멈추게 해주는 실질적인 수단을 제공합니다. 서버 사이드 자바스크립트도 이런 수단을 제공해 주므로 무한으로 반복되는 프로세스를 죽일 수 있다.
- 반복문 조건엔 비교뿐만 아니라 모든 종류의 표현식, 변수가 올 수 있다.
do..while
문법은 조건이 truthy인지 아닌지 상관 없이 본문을 최소 한 번이라도 실행하고 싶을 때만 사용한다.
for
- for 문의 구성요소를 생략하는 것도 가능하다.
모든 구성 요소를 생략할 수도 있는데, 이럴 경우 무한 반복문이 만들어진다. 이때 두 개의 세미콜론을 모두 넣어주어야 에러가 발생하지 않는다.
- 반복문의 시작 지점이나 끝 지점에서 조건을 확인하는 것이 아니라 본문 가운데 혹은 본문 여러 곳에서 조건을 확인해야 하는 경우, ‘무한 반복문 +
break
’ 조합을 사용하면 좋다. continue
지시자는break
의 ‘가벼운 버전’이다.continue
는 전체 반복문을 멈추지 않습니다. 대신에 현재 실행 중인 이터레이션을 멈추고 반복문이 다음 이터레이션을 강제로 실행시키도록 한다(조건을 통과할 때).continue
는 현재 반복을 종료시키고 다음 반복으로 넘어가고 싶을 때 사용한다.- continue는 중첩을 줄이는 데 도움을 준다.
?
오른쪽엔break
나continue
가 올 수 없다.- 여러 개의 중첩 반복문을 한 번에 빠져나와야 할 때는 레이블(label)을 사용한다. 반복문 앞에 레이블을 붙이고,
break/continue
에 이 레이블을 함께 사용할 수 있다. 레이블은 중첩 반복문을 빠져나와 바깥의 반복문으로 갈 수 있게 해주는 유일한 방법이다.