[JS] 반복문이란?

[JS] 반복문이란?

for문

반복문을 사용하면 불필요한 코드를 반복적으로 사용하지 않고 간결하게 작성할 수 있다.

for문 작성법

for (초기값; 조건식; 증감식) {
	// 실행할 코드
}
  • 초기값 : 증감식 반복횟수를 카운트하는 역할을 하는 변수, 초기값은 반복문의 코드블록 내부에서만 유효하다.
  • 조건식 : 코드블록 내부 코드의 실행 여부 결정, true일 경우 코드 실행, false일 경우 반복문 종료.
  • 증감식 : 코드블록 내부의 코드를 실행한 후 초기값으로 선언된 변수를 증가 또는 감소시키기 위한 표현식

사용 예시

let result = 0;

for(let num = 1; num<=5; num++){
  result = result + num;
}

console.log(result); //15

위 코드 실행 과정

  1. for문 내부에 num이라는 변수를 선언하고 1이라는 초기값을 할당한다.
  2. 변수 num이 5보다 작거나 같은지 확인한다.
  3. 2의 결과가 true면, 코드블록 내부의 코드를 실행한다.
  4. 변수 numdmf 1 증가 시킨다.
  5. 2부터 4까지 반복한다.
  6. 2의 결과가 false면 반복문 종료

반복문 활용

for문의 초기화, 조건식, 증감식 모두 숫자타입과 관련있는데.. 문자열에 반복문을 활용하려면?

문자열의 첫 번째 문자부터 마지막 문자까지 모두 출력하는 코드?
let str = 'Jawsbean';
for(let i = 0; i<=8; i++{
  console.log(str[i])
})
그러나 문자열의 길이를 모를 땐 어떻게 작성하는가?
let str = 'Jawsbean';
for(let i = 0; i <=str.length - 1; i++){
  console.log(str[i]);
}

인덱스는 0부터 세지만
길이는 말 그대로 문자열에 속한 문자열 갯수를 말함.
따라서 문자열의 마지막 문자의 인덱스는 문자열의 길이보다 1만큼 작다.
i <=str.length-1 || i < str.length로 작성

반복문은 중첩이 가능하다.

while문

초기화, 조건식, 증감식이 모두 필요한 for문과 달리 while문은 조건식만 입력한 후 조건식의 평가결과가 true인 경우 코드블록 내부의 코드를 반복하여 실행.
무한루프를 주의할 것. (false로 평가되는 순간이 있는지 반드시 확인)

let num = 0;
while(num <3){
  console.log(num);
  num++
}

//=====> for문으로 바꾸면

for(let num = 0; num <3; num++){
  console.log(num);
}

do…while문

while뒤에 오는 조건식이 true로 평가되는 동안 do 뒤에 오는 코드블록 내부의 코드를 반복하여 실행한다. (단, 이 경우 do의 코드블록 내부 코드가 최소 한 번은 실행됨)

for 문과 while문

for문과 while문의 용도는 명확히 구분되지 않는다.
그러나 주로 사용하는 상황은 있다

  • for문을 사용하는 경우
    • 반복 횟수가 비교적 명확할 때
    • 배열, 문자열 내부를 순회할 때
    • 반복문의 중첩이 필요할 때
  • while문을 사용하는 경우
    • 반복 횟수가 명확하지 않을 때

©lunadein2022 2022. All rights reserved.