배열과 함께 사용할 수 있는 반복문은 for in 반복문이다. for in 반복문은 배열 요소를 하나하나 꺼내서 특정 문장을 실행할 때 사용한다. for in 반복문의 기본 형태는 다음과 같다.
for (const 반복 변수 in 배열 또는 객체) {
문장
}
for 반복문의 반복 변수에는 요소의 인덱스들이 들어온다. 이를 활용해서 배열 요소에 접근할 수 있다.
for in 반복문은 반복 변수에 인덱스가 들어간다. 그래서 반복문 내부에 요소를 사용하려면 fruits[i]와 같은 형태로 사용하며, 안정성을 위해 몇 가지 코드를 더 추가한다.
그래서 등장한 것이 for of 반복문이며, 요소의 값을 반복할 때 안정적으로 사용할 수 있다.
for (const 반복 변수 of 배열 또는 객체) {
문장
}
for 반복문의 기본 형태는 다음과 같다. 일반적으로 for 반복문은 특정 횟수만큼 반복하고 싶을 때 사용하는 범용적인 반복문이다.
for (let i = 0; i < 반복횟수; i++) {
문장
}
while 반복문은 if 조건문과 형태가 매우 비슷하다. if 조건문과 다른 점은 문장을 한 번만 실행하고 끝나는 것이 아니라 불 표현식이 true면 계속해서 문장을 실행한다는 것이다.
while (불 표현식) {
문장
}
while 반복문의 경우 조건이 변하지 않는다면 무한히 반복 실행하므로 조건을 거짓으로 만들 수 있는 내용이 문장에 포함되어 있어야 한다. 반복문이 무한 반복되는 것을 무한 루프라고 한다.
break 키워드는 조건문이나 반복문을 벗어날 때 사용하는 키워드이다. while 반복문은 조건이 항상 참이므로 무한 반복한다. 이러한 무한 루프는 break 키워드를 사용해야 벗어날 수 있다.
while (true) {
문장
} break
continue 키워드는 반복문 안의 반복 작업을 멈추고 반복문의 처음으로 돌아가 다음 반복 작업을 진행한다.
<script>
const array = ['사과','배','귤','바나나']
for (const i in array) {
console.log(i)
}
for (const i of array) {
console.log(i)
}
</script>
for in 반복문은 배열의 인덱스를 기반으로 반복할 때 사용하고, for of 반복문은 배열의 값을 기반으로 반복할 때 사용하기 때문에 실행결과는 다음과 같다.
"0"
"1"
"2"
"3"
"사과"
"배"
"귤"
"바나나"
<script>
const array = [];
for (const i = 0; i < 3; i++) {
array.push((i + 1) * 3);
}
console.log(array);
</script>
오류가 발생하게 된다. const는 상수를 할당할 때 사용하는 키워드인데 반복문 내에서 i는 0부터 2까지 변화하게 되므로 const를 let으로 바꿔주면 오류없이 실행된다.
1부터 100까지의 숫자를 곱한 값을 계산하는 프로그램을 만들어보세요. 그리고 코드를 실행해 나온 결과를 확인해보세요.
<script>
let output =1
for(i = 2; i <= 100; i++) {
output = output*i;
}
console.log(`1~100의 숫자를 모두 곱하면, ${output}입니다.`)
</script>
<script>
//변수를 선언합니다.
let output = ''
const size = 5
//반복합니다.
for
</script>
미해결