한 번으로 끝나는 작업이 아니라 컴퓨터가 반복해서 처리해야하는 작업이 있다면 반복문을 통해 로직을 작성할 수 있습니다.
while반복문의 형태는 다음과 같으며 조건이 참일 경우에 코드가 실행됩니다.
while (condition) {
// 실행 코드
}
let i = 0;
while (i <= 5) {
console.log(i) // 0 1 2 3 4 5
i++ // i가 1 증가
}
do while반복문의 형태는 다음과 같으며, 실행코드가 한번 실행된 후 조건을 검증 한 후 결과가 true이면 계속해서 반복문이 실행됩니다.
do {
// 실행 코드
} while (condition);
for 반복문은 카운터 변수 i를 반복문 안에 선언이 가능하며, 이를 인라인 변수 선언이라하고 선언된 변수는 반복문 안에서면 접근이 가능합니다. 또한 기존에 정의되어 있던 변수를 for문에서 사용하는 것도 가능합니다.
for (begin; condition; step) {
// ... 반복문 본문 ...
}
//구구단 만들기
function loop(num) {
for(let i = 1; i <= 9; i++) {
console.log(`${num} * ${i}`)
}
}
loop(2) // 2 * 1
// 2 * 2
// 2 * 3
// 2 * 4
// 2 * 5
// 2 * 6
// 2 * 7
// 2 * 8
// 2 * 9
for문을 중첩하여 사용이 가능하며 더 복잡한 로직 구현이 가능하다. 아래는 입력된 문자열의 요소 중 중복이 있는지 확인하는 코드입니다.
function RepeatConfirm(str) {
for(let i = 0; i < str.length; i++) {
for(j = i+1; j < str.length; j++) {
if( str[i] === str[j] ) {
return true;
}
}
}
return false;
}
RepeatConfirm('aabgfer') // true
RepeatConfirm('abcdefg') // false
반복문 조건이 falsy한 값을 가지면 반복문이 종료되나, break를 사용하면 바로 반복문을 빠져나오는 것이 가능합니다.
let a = 0;
for (let i = 0; i < 15; i++) {
a = i;
if (i === 11) {
break; // i가 11일때, 반복문 종료
}
}
// console.log(i) // 11