[모던 JavaScript 파헤치기 DAY4]

김하은·2022년 10월 16일
1

Javascript

목록 보기
4/4
post-thumbnail

📍 2.13 while 과 for 반복문📍

-> 동일한 코드를 반복 실행 해야 할때 "반복문" 사용하면 동일한 코드를 여러번 반복 할수 있다.

💙 'while'반복문
ex1)

while (feeling) {
		'기분좋음'
}

-> feeling 조건이 truthy 이면, 반복문의 코드가 실행된다.

ex2)

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

반복문 본문이 한 번 실행되는 것을 반복(iteration, 이터레이션) 이라고 부른다.
따라 , 위에선 3번의 이터레이션을 만든다.

** 만약 i++ 가 없었다면 동일한 수가 계속 반복되 었을 것이다.

🟣 반복문 조건엔 비교 뿐만 아니라 , 모든 종류의 표현식, 변수가 올수 있다.
조건 -> while에 의해 평가 되고 ,평가 된 후엔 불린 값으로 변경된다.
ex1)
while ( i! = 0 ) -> i가 0이 아닐때 true

let i = 3;
while (i) {
 alert( i );
  i--;
}

-> while(3) 조건식 ture = alert(i) 출력
i--;
while(2) 조건식 true = alert(i) 출력
i--;
일때 0 이 으로 조건이 falsy가 되며 반복문이 멈춘다.

💙 'do...while'반복문
-> 본문이 먼저 실행되고, 조건을 확인할 후 조건이 truthy 동안 본문이 계속 실행됨.

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

-> ture 조건에 상관 없이 ㅣ 본문을 최소한 한번 이라도 실행 하고 싶을때만 사용한다.

💙 'for' 반복문
-> 가장 많이 쓰이는 반복문
ex1)

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

-> i = 0 ( 반복문에 진입할 때 단한번만 실행된다.)
i < 3 (반복마다 해당 조건이 확인된다. false일때 반복문을 멈춘다.)
alert(i) (반복할동안 조건이 true 일 경우 alert 창이 실행된다.)
i ++ (각 반복의 body가 실행된 이후에 실행된다. )

🟣 정의 되어 있는 변수 사용 가능
ex)

let i = 0;

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

💙 반복문 빠져나오기
-> 반복문의 조건이 false가 되면 반목분이 종료 되지만,
특별한 break 를 사용하면 언제는 원하는 때에 반복문을 빠져 나올수 있다.
ex)

let sum = 0;
while (true) {
	let value = +prompt("숫자를 입력하세요,", "");
  
  if(!value) breake;
  
  sum += value;
}
alert('합계' + sum); 

-> 사용자가 입력하지 않거나 cancel 버튼을 눌렀을 때 활성화 되면,
반복문이 즉시 중단되고, 반복문 아래 첫번째 줄로 이동.

💙 다음 반복으로 넘어가기
-> "continue" 전체 반복문을 멈추지 않고
현재 진행중인 이터레이션을 멈추고 다음 이터레이션을 강제로 실행시키도록 한다.

ex) continue 사용해 홀수만 출력하기

for (let i = 0; i< 10; i++){
	if(i % 2 == 0)continue;
  
  	alert(i); // 1, 3, 5, 7, 9
}

-> i가 짝수 이면 continue 가 본문 실행을 중단시키고 다음 이터레이션 실행.


반복문 연습 예제

  1. while 반복문의 출력값 예상하기

(1) 전위형 증가 연산자를 사용한 경우 (++i);

let i = 0;
while (++i < 5) alert(i);

-> 먼저 ++ 의 계산이 되고 비교 , 따라 1,2,3,4 까지만 출력

(2) 후휘형 증가 연산자를 사용한 경우 (i++);

let i =0;
	while(i++ < 5) alert(i);

-> i++ 는 i를 증가 시키긴 하지만, 기존 값이 반환된다.
첫번째 에서는 0 < 5 를 비교하게 된다. 하지만 i는 증가한후 임으로 1이 출력.

i = 4 일때는,
4 < 5 true 임으로 alert 창이 뜨고
5 < 5 임으로 마지막으로 출력되는 값은 5 가 된다.

  1. for 반복문의 출력값 예상하기

(1) 후위형 증가 연산자를 사용한 경우(i++)

for (let i = 0; i < 5; i++) alert(i);

-> 0,1,2,3,4
(i++ 조건과 별개로 실행된다.)

(2) 전위형 증가 연산자를 사용한 경우(++i)

for (let i = 0; i < 5; ++i) alert(i);

-> 0,1,2,3,4

3.for 반복문을 이용하여 짝수 출력하기

for (let i = 2; i <= 10; i++) {
  if(i % 2 == 0) {
    alert(i)
  }
}
  1. 사용자가 유효한 값을 입력할 때 까지 프롬포트 창 띄우기.
let num = 0 

	while (num <= 100) {
      promt('100보다 큰 수를 입력하세요');
      if (num !) 
          break;
    }
profile
꾸준함을 이기는것은 없다

0개의 댓글