본문 바로가기
JavaScript 시리즈☕/제어문

🙄 continue 정리 🙄

by @ENFJ 2021. 8. 15.

continue : 스킵(건너뛰기) 한다는 느낌으로 아래 코드를 적용시켜보자!

 


 

for 문에서 continue

for 문을 이용해서 반복을 한다. 

<순서>

1. i 라는 변수 에 1을 저장해두고, 10 까지 반복시킴, 1씩 추가해서
2. if 조건문을 이용하여 2로 나누었을때 나머지가 0 이라면, continue 를 실행시킨다.
3. 알다시피, continue는 skip? 느낌이으로 생각하면 된다. 그렇다면 console log 실행이 skip 되면서 i++ 가 실행된다.

4. 숫자 2는 2로 나누었을때, 나머지가 0이 나오기 때문에 true 이다. 그래서 continue 가 실행이 되면서 console.log 가 아닌, 바로 i++ 실행이 된다. (i가 2->3 으로)
5. 숫자 3는 2로 나누었을때, 나머지가 1이 나오기때문에 false 이다. 그래서 continue 가 실행이 안되고 바로 console.log 가 실행되어서 숫자 3이 콘솔에 찍히게 되는것이다.


위 과정 을 게속 i=10 까지 반복 실행된다.

출력 결과

1 3 5 7 9 이렇게 홀수만 찍히게 된다.
그 이유 는 순서를 설명하면서 언급했었는데,  %부호는 나머지를 나타내는 부호입니다.
그렇기 때문에 2로 나누었을때 나머지가 0이 되면 continue 가 실행되면서 console.log 단계를 건너뛰게 됩니다.
다시 말하면, 2로 나누었을때 나머지가 0 이되는 2의 배수는 console.log 가 실행이 안된다는 겁니다.
=> 홀수만 출력 됨.

 

while 문에서 continue

이번에는 while 문으로 만들어보았다.

while 문 같은경우는 알다시피, for문과 다르게  i 변수를 글로벌 변수?로 선언한다.
그리고 while 문안에 10보다 작거나 같을때까지 반복하는 조건을 적는다.
조건이 true 라면, 바로 밑에 줄인 if 문을 실행시킨다.
if 문은 i를 2로 나누었을때, 나머지가 0이면 아래 i++ 와 continue 를 실행시키며,
i를 2로나누었을때 나머지가 0 이 아니라면, console.log(i)를 실행시키면서 콘솔에 출력하게 된다.

그리고 다시 위로 올라가서 10이하까지 게속게속 반복하면서 위 과정을 반복하게 된다.

위에 for 문과 내용은 똑같다. 단지 코드가 아주아주 조금 다른것 뿐이다. 

*이때 가장 주의?해야 할점은 if 문밑에 i++ 를 적어주는 것!  
for 문과 다르게 while 문은 추가해주는 부분을 안적어주면 , continue 를 실행시키면서 바로 위로 1을 또다시 
받으면서 실행시키게 된다. 즉, 1씩 증가하지 못하고 게속 똑같은 무의미한 행동을 무한 반복하게 된다.

아마 i++를 적지 않고 실행시킨다면 게속 로딩 상태가 될 것 이다.