continue문은 반복문의 코드 실행을 현 지점에서 중단하고 반복문의 증감식으로 실행 흐름을 이동시킨다.
문자열에서 특정 문자 개수 세기 예제
let string = 'Hello World'
let search = 'l'
let count = 0
for(let i = 0; i < string.length; i++){
// 'l'이 아니면 현 지점에서 실행중단하고 증감식으로 이동
if(string[i] !== search) continue;
count++;
}
console.log(count) //3
위 예제는 아래의 코드와 동일하게 작동한다.
let string = 'Hello World'
let search = 'l'
let count = 0
for(let i = 0; i < string.length; i++){
if(string[i] === search)
count++;
}
console.log(count) //3
위처럼 if 문 내에서 실행해야하는 코드가 1줄이라면 continue 문 굳이 사용하지 않아도 된다. 오히려 가독성 좋음. 근데 if 문 내에서 실행해야할 코드가 길다면 들여쓰기가 한 단계 더 깊어지므로 continue 문 사용하는 것이 오히려 가독성이 좋다.
// continue 문을 사용하지 않으면 if 문 내에 코드를 작성해야하 한다.
for(let i = 0; i < string.length; i++){
// 'l'이면 카운트를 증가시킨다.
if(string[i] === search){
count++;
}
}
// continue 문을 사용하려면 if 문 밖에 코드를 작성할 수 있다.
for(let i = 0; i < string.length; i++){
// 'l'이 아니면 카운트를 증가시키지 않는다.
if(string[i] !== search) continue;
count++;
}
📎 참고
모던 자바스크립트 deep dive