★반복문★
for
문
for 반복문은 어떤 특정한 조건이 거짓으로 판별될 때까지 반복합니다.
for (초기문:초기화 식1; 조건문:다시 반복할지 확인하는 식 2; 증감문:변화를 주기 위한 식3)
문장;(<=이 문장을 반복해서 실행시킵니다.)
for (초기화 식1; 다시 반복할지 확인하는 식 2; 변화를 주기 위한 식3)
{ 문장 1;(<=이 문장을 반복해서 실행시킵니다.)
문장 2;
...
}
for 반복문은 어떤 특정한 조건이 거짓으로 판별될 때까지 반복합니다.
for (초기화 식1; 다시 반복할지 확인하는 식 2; 변화를 주기 위한 식3) { 문장 1;(<=이 문장을 반복해서 실행시킵니다.) 문장 2; ... }
초기문 : 초기부는 한번만 실행되며, 일반적으로 변수에 값을 지정하거나 변수를 선언한다. 일반적으로 카운트(count)할 수 있는 변수를 사용하거나 선언하며, 이곳에 선언한 변수의 접근영역(scope)은 for문 안에 머무르는게 아니라 for문 밖에서도 접근이 가능하다.
조건문 : 조건문은 for문이 순환하기 전 조건이 참인지 거짓인지 판별한다. 조건이 참이면 문장을 순회하며, 조건이 거짓이면 for문을 빠져나온다.
증감문 : for문을 순회하는 동안 한번의 순회가 끝나면 실행되는 구문이다. 일반적으로 초기문에 선언한 카운트 변수를 갱신, 가감 하는데 사용된다.
문장 : 조건문의 조건이 참인 경우 실행하게 되는 구문이다.
초기문 : 초기부는 한번만 실행되며, 일반적으로 변수에 값을 지정하거나 변수를 선언한다. 일반적으로 카운트(count)할 수 있는 변수를 사용하거나 선언하며, 이곳에 선언한 변수의 접근영역(scope)은 for문 안에 머무르는게 아니라 for문 밖에서도 접근이 가능하다.
조건문 : 조건문은 for문이 순환하기 전 조건이 참인지 거짓인지 판별한다. 조건이 참이면 문장을 순회하며, 조건이 거짓이면 for문을 빠져나온다.
증감문 : for문을 순회하는 동안 한번의 순회가 끝나면 실행되는 구문이다. 일반적으로 초기문에 선언한 카운트 변수를 갱신, 가감 하는데 사용된다.
문장 : 조건문의 조건이 참인 경우 실행하게 되는 구문이다.
예시
for (var i = 1; i <= 5; i++) {
// <= 변수 i의 값을 1개씪 증가시키면서, i<=5가 거짓(false)이 될때까지
console.log("반복하고 있습니다."); // <= 이 문장이 반복됩니다.
}
console.log("반복이 끝났습니다.");
for문은 반복 횟수를 세기 위해서 변수를 사용합니다. 예를 들어, 이 코드는 변수 i를 사용합니다. 그리고 다음과 같은 순서로 코드가 실행됩니다.
①. 식 1에 따라 변수 1를 초기화한다.
②. 식 2의 조건이 참(true)이면 {}블록 안의 코드를 실행시킨 후 식 3을 실행한다.
③. 식 2의 조건이 거짓(false)이 될 때까지 ②를 반복한다.
즉, 이 for 문에서는 변수i를 1로 초기화한 뒤, 조건 i <= 5가 거짓(false)이 될 때까지 i++를 실행시켜서 '반복하고 있습니다.'라는 문장을 출력합니다.
for (var i = 1; i <= 5; i++) {
// <= 변수 i의 값을 1개씪 증가시키면서, i<=5가 거짓(false)이 될때까지
console.log("반복하고 있습니다."); // <= 이 문장이 반복됩니다.
}
console.log("반복이 끝났습니다.");
for문은 반복 횟수를 세기 위해서 변수를 사용합니다. 예를 들어, 이 코드는 변수 i를 사용합니다. 그리고 다음과 같은 순서로 코드가 실행됩니다.
①. 식 1에 따라 변수 1를 초기화한다.
②. 식 2의 조건이 참(true)이면 {}블록 안의 코드를 실행시킨 후 식 3을 실행한다.
③. 식 2의 조건이 거짓(false)이 될 때까지 ②를 반복한다.
즉, 이 for 문에서는 변수i를 1로 초기화한 뒤, 조건 i <= 5가 거짓(false)이 될 때까지 i++를 실행시켜서 '반복하고 있습니다.'라는 문장을 출력합니다.
while
문
while 문은 어떤 조건문이 참이기만 하면 문장을 계속해서 수행합니다. while 문은 다음과 같습니다.
while (조건문) // <= 조건이 참(true)인 경우
문장; // <= 문장을 순서대로 반복 실행한다
만약 조건문이 거짓이 된다면, 그 반복문 안의 문장은 실행을 멈추고 반복문 바로 다음의 문장으로 넘어갑니다.
조건문은 반복문 안의 문장이 실행되기 전에 확인 됩니다. 만약 조건문이 참으로 리턴된다면, 문장은 실행되고 그 조건문은 다시 판별됩니다. 만약 조건문이 거짓으로 리턴된다면, 실행을 멈추고 while문 바로 다음의 문장으로 넘어가게 됩니다.
많은 문장들을 실행하기 위해선, { }를 써서 문장들을 묶어줍니다.
while 문은 어떤 조건문이 참이기만 하면 문장을 계속해서 수행합니다. while 문은 다음과 같습니다.
만약 조건문이 거짓이 된다면, 그 반복문 안의 문장은 실행을 멈추고 반복문 바로 다음의 문장으로 넘어갑니다.
조건문은 반복문 안의 문장이 실행되기 전에 확인 됩니다. 만약 조건문이 참으로 리턴된다면, 문장은 실행되고 그 조건문은 다시 판별됩니다. 만약 조건문이 거짓으로 리턴된다면, 실행을 멈추고 while문 바로 다음의 문장으로 넘어가게 됩니다.
많은 문장들을 실행하기 위해선, { }를 써서 문장들을 묶어줍니다.
예시 1
다음 while 반복문은 n이 3보다 작은 한, 계속 반복됩니다.
n = 0;
x = 0;
while (n < 3) {
n++;
x += n;
}
매 반복과 함께, n이 증가하고 x에 더해집니다. 그러므로, x와 n은 다음과 같은 값을 갖습니다.
- 첫번째 경과 후:
n
= 1 and x
= 1 - 두번째 경과 후:
n
= 2 and x
= 3 - 세번째 경과 후:
n
= 3 and x
= 6
세번째 경과 후에, n < 3 은 더이상 참이 아니므로, 반복문은 종결됩니다.
다음 while 반복문은 n이 3보다 작은 한, 계속 반복됩니다.
n = 0;
x = 0;
while (n < 3) {
n++;
x += n;
}
매 반복과 함께, n이 증가하고 x에 더해집니다. 그러므로, x와 n은 다음과 같은 값을 갖습니다.
n
= 1 and x
= 1n
= 2 and x
= 3n
= 3 and x
= 6세번째 경과 후에, n < 3 은 더이상 참이 아니므로, 반복문은 종결됩니다.
예시 2
조건문은 항상 거짓이 될지라도 무한 루프는 피해야 합니다. 그렇지않으면, 그 반복문은 영원히 끝나지 않을 것입니다. 아래의 while 문은 조건문이 절대 거짓이 될 수 없으므로 영원히 반복될 것입니다.
while (true) {
console.log("Hello, world");
}
조건문은 항상 거짓이 될지라도 무한 루프는 피해야 합니다. 그렇지않으면, 그 반복문은 영원히 끝나지 않을 것입니다. 아래의 while 문은 조건문이 절대 거짓이 될 수 없으므로 영원히 반복될 것입니다.
while (true) {
console.log("Hello, world");
}
do...while
문
do...while 문은 특정한 조건이 거짓으로 판별될 때까지 반복합니다. do...while 문은 다음과 같습니다.
do
문장 // <= 조건이 참(true)이면 반복해서 실행한다
...
while (조건문); // <= 이 블록의 코드가 반복해서 실행된다.
조건문을 확인하기 전에 문장은 한번 실행됩니다. 많은 문장을 실행하기 위해선 { }를 써서 문장들을 묶어줍니다. 만약 조건이 참이라면, 그 문장은 다시 실행됩니다. 매 실행 마지막마다 조건문이 확인됩니다. 만약 조건문이 거짓일 경우, 실행을 멈추고 do...while 문 바로 아래에 있는 문장으로 넘어가게 합니다.
do...while 문은 특정한 조건이 거짓으로 판별될 때까지 반복합니다. do...while 문은 다음과 같습니다.
조건문을 확인하기 전에 문장은 한번 실행됩니다. 많은 문장을 실행하기 위해선 { }를 써서 문장들을 묶어줍니다. 만약 조건이 참이라면, 그 문장은 다시 실행됩니다. 매 실행 마지막마다 조건문이 확인됩니다. 만약 조건문이 거짓일 경우, 실행을 멈추고 do...while 문 바로 아래에 있는 문장으로 넘어가게 합니다.
예시
다음 예제에서, do 반복문은 최소 한번은 반복됩니다. 그리고 i 가 5보다 작지 않을 때까지 계속 반복됩니다.
var i=1
do {
i += 1;
console.log(i);
} while (i < 5);
다음 예제에서, do 반복문은 최소 한번은 반복됩니다. 그리고 i 가 5보다 작지 않을 때까지 계속 반복됩니다.
var i=1
do {
i += 1;
console.log(i);
} while (i < 5);
조건식이 거짓(false)일 때,
* while : 한번도 실행되지 않음
* do~ while : 한번은 실행되고 종료