JavaScript – while과


JavaScript - while과 1

상품 목록에서 상품을 하나씩 출력하거나 1에서 10까지 숫자를 하나씩 증가시키면서 동일한 코드를 반복적으로 실행해야 하는 경우가 많습니다. 이 경우 루프를 사용하여 동일한 코드를 여러 번 반복할 수 있습니다.

‘동안’ 문

while(condition) {
    // 코드
    // '반복문 본문(body)'라고 불림
}

상태(조건) true인 경우 루프 본문 암호달리고 있다

루프 상태 나 < 3만족하면서 발행된다

let i = 0;
while (i < 3) { // 0, 1, 2가 출력된다.
    alert(i);
    i++;
}

루프 본문을 한 번 실행하는 것을 반복이라고 합니다. 위의 예에서 루프는 세 번 반복합니다.

나++이것이 없으면 루프는 이론적으로 끝없이 반복됩니다. 그러나 브라우저는 이 무한 루프를 중지할 수 있는 편리한 수단을 제공합니다. 서버측 자바스크립트는 또한 이 기능을 제공하여 무한 루프 프로세스를 종료할 수 있습니다.

루프 조건에서는 비교뿐만 아니라 모든 종류의 표현식과 변수를 사용할 수 있습니다. 조건은 while에 의해 평가되고 평가 후 부울 값으로 변경됩니다.

동안 (나는! = 0)단축 내가) 동안그걸로 했어

let i = 3;
while (i) { // i가 0이 되면 조건이 false가 되며 반복문이 멈춘다.
    alert(i);
    i--;
}

‘do…while’ 문

하는 … 동안문법을 사용하여 상태(조건)은 루프 본문 아래로 이동할 수 있습니다.

do{
    // 반복문 본문
} while (condition);

이때 본문이 먼저 실행되고 조건을 확인한 후 조건이 참인 동안 본문이 계속 실행됩니다.

let i = 0;
do {
    alert(i);
    i++;
} while (i < 3);

하는 … 동안구문은 조건이 참인지 여부에 관계없이 본문을 한 번 이상 실행해야 하는 경우에만 사용해야 합니다. 대부분의 상황에서 하는 … 동안보다 하는 동안(…) {…}적합하다

‘에 대한’ 문

루프는 루프보다 복잡하지만 가장 일반적으로 사용되는 루프입니다.

for (begin; condition; step) {
    // ... 반복문 본문 ...
}

i가 0~3이 될 때까지 다음 half 문을 실행합니다(단, 3은 포함되지 않음). 경고(i)라고

for (let i = 0; i < 3; i++) { // 0, 1, 2가 출력된다.
    alert(i);
}

요소

시작하다 나는 = 0 루프에 들어갈 때 한 번만 실행됩니다.
상태 나 < 3 이 조건은 각 반복에서 확인됩니다. 거짓이면 루프가 중지됩니다.
경고(i) 조건이 true인 동안 계속 실행됩니다.
단계 나++ 각 반복의 본문이 실행된 후에 실행됩니다.

일반적인 반복 알고리즘은 다음과 같습니다.

begin을 실행된다
→ (condition이 true면 → body를 실행한 후, step이 실행된다.)
→ (condition이 true면 → body를 실행한 후, step이 실행된다.)
→ (condition이 true면 → body를 실행한 후, step이 실행된다.)
→ ...

시작하다이것을 한 번 실행한 후, 상태(조건) 확인 및 , 그만큼 단계절반 속도로 계속됩니다.

// for(let i = 0; i < 3; i++) alert(i)

// begin을 실행
let i = 0;
// condition이 true이면 → body를 실행한 후, step이 실행된다.
if(i < 3) {alert(i); i++}
// condition이 true이면 → body를 실행한 후, step이 실행된다.
if(i < 3) {alert(i); i++}
// condition이 true이면 → body를 실행한 후, step이 실행된다.
if(i < 3) {alert(i); i++}
// i === 3이므로 반복문이 종료된다.

구성요소 생략

~을 위한문장의 일부를 생략하는 것도 가능합니다.

루프 시작 시 아무 작업도 수행할 필요가 없는 경우 시작하다생략할 수도 있습니다.

let i = 0; // i를 선언하고 값도 할당되었다.

for(; i < 3; i++) { // 'begin'이 필요하지 않기 때문에 생략
    alert(i); // 0, 1, 2
}

단계생략도 가능하다.

let i = 0;

for (; i < 3;) {
    alert(i++);
}

위와 같이 ~을 위한문을 구성할 때 동안 (i < 3)와 같을 것이다

모든 구성 요소를 생략하여 무한 반복할 수 있습니다.

for(;;) {
    // 끊임 없이 본문이 실행된다.
}

~을 위한문의 구성 요소를 생략하면 두 가지 ;(세미콜론)이 필요합니다. 없는 경우 오류가 발생합니다.

출구 루프

일반적으로 루프 조건이 거짓이 되면 루프가 종료됩니다.

그러나 특별한 지표 부서지다원할 때마다 루프에서 벗어날 수 있습니다.

사용자에게 일련의 숫자를 입력하도록 지시하고 사용자가 값을 입력하지 않으면 루프를 종료합니다.

let sum = 0;

while(ture) {
    let value = +prompt('숫자를 입력하세요.', '');
    if(!value) break; // (*)
    sum += value;
}
alert(`합계: ${sum});

로 표시된 줄에부서지다 사용자가 아무 것도 입력하지 않거나취소

버튼을 누르면 활성화됩니다. 이 시점에서 루프는 즉시 중지되고 제어 흐름은 루프 아래의 첫 번째 줄로 이동합니다. 여기경보

첫 줄이 됩니다.

문장 중간이나 여러 군데에서 조건을 확인해야 하는 경우 루프의 처음이나 끝에서 조건을 확인하는 대신 “무한 루프 +부서지다

“조합을 사용하는 것이 좋다.

  • 요약 ~하는 동안
  • – 각 반복이 시작되기 전에 조건을 확인하십시오. 하는 … 동안
  • – 각 반복 후 상태를 확인합니다. 을 위한 (;;)

– 각 반복이 시작되기 전에 조건을 확인하십시오. 추가 설정을 할 수 있습니다. ‘무한’ 루프는 일반적으로동안(참) 다른 루프와 마찬가지로 무한 루프를 사용하여 만든부서지다

지시어로 중지할 수 있습니다.