반복문의 시작 지점이나 끝 지점에서 조건을 확인하는 것이 아니라 본문 가운데 혹은 본문 여러 곳에서 조건을 확인해야 하는 경우, '무한 반복문 + break’ 조합을 사용하면 좋습니다.
let sum = 0;
while (true) {
let value = +prompt("숫자를 입력하세요.", '');
if (!value) break; // (*)
sum += value;
}
alert( '합계: ' + sum );
do~while 반복문
본문이 먼저 실행되고, 이후 조건을 확인합니다.
이는 조건이 truthy 인지 아닌지에 상관없이, 본문을 최소한 한번이라도 실행하고 싶을 때만 사용해야 합니다.let i = 0; do { alert( i ); i++; } while (i < 3);
중첩 반복문을 한 번에 빠져나올 때 사용합니다.
outer: for (let i = 0; i < 3; i++) {
for (let j = 0; j < 3; j++) {
let input = prompt(`(${i},${j})의 값`, '');
// 사용자가 아무것도 입력하지 않거나 Cancel 버튼을 누르면 두 반복문 모두를 빠져나옵니다.
if (!input) break outer; // (*)
// 입력받은 값을 가지고 무언가를 함
}
}
alert('완료!');
배열의 값을 꺼내서 반복하는 반복문입니다.
fruits = ['banana', 'apple', 'grapes'];
for ( value of fruits ) {
console.log(value);
}
//result
banana
apple
grapes
객체의 반복문에서 사용됩니다. 객체의 key를 꺼내어 반복합니다.
const obj = { name: 'james', age: 31 };
for ( item in obj) {
console.log(item);
}
// result
name
age