코드 작성에 있어 반복적인 작업을 보다 쉽게 처리하기 위해 사용하는 문법입니다.
조건식이 True일때까지 반복문을 실행하며 조건식이 False이면 실행을 멈춥니다.
let i = 0;
let n = 0;
while ( i < 3) {
n++;
i += n
}
해당 코드의 과정을 보면
1. 첫번 째 반복: i = 1 과 n = 1
2. 두번 째 반복: i = 2 과 n = 3
3. 세번 째 반복: i = 3 과 n = 6
세번 째 반복 이후 i 값이 4가 되기 때문에 ( i < 3) 조건식이 참이 아니기 때문에 반복문이 중단됩니다.
(초기값, 조건식, 증감식)의 형태로 초기값이 조건식에 참인 동안만 반복문을 실행합니다.
for(let i = 0; i < 3; i++) {
console.log(i)
}
해당 코드의 과정을 보면
1. 첫번 째 반복: i = 1
2. 두번 째 반복: i = 2
3. 세번 째 반복: i = 3
세번 째 반복 이후 i 값이 4가 되기 때문에 ( i < 3) 조건식이 참이 아니기 때문에 반복문이 중단됩니다.
while, for 둘 다 반복문인데 그럼 어떤 차이가 있을까?
무한루프나 특정 조건에 만족할 때까지 반복해야 하는 경우
반복 횟수를 예측 할 수 없을 때 사용하는 것이 좋다.
반복횟수가 정해진 경우 사용하는 것이 가독성이 더 좋다.
주로 배열과 함께 많이 사용
반복문에서 continue를 만나면 현재 반복문을 진행하지 않고 다음 반복문을 실행합니다.
for(let i = 0; i < 5; i++){
if( i === 3){
continue
}
console.log(i);
}
해당코드는 반복문을 돌다가 i 값이 3이 되면 아래의 코드 console 값을 찍지 않고 다음 반복문으로 넘어갑니다.
출력 되는 값은 0,1,2,4,5 입니다.
보통 무한 반복문이 돌아갈 때 많이 사용하는데 break를 만나게 되면 사용된 scope의 반복문을 종료하게 됩니다.
let i = 0;
while(1) {
if( i === 7) {
break;
}
console.log(i);
i++;
}
i 값이 10이면되 바로 반복문을 종료합니다.
출력 되는 값은 0,1,2,3,4,5,6 입니다.