JS 문법 - 반복문

KODYwiththeK·2022년 12월 2일
0

JavaScript

목록 보기
5/32

JS 문법 - 반복문

Class: 제로베이스
Created: November 29, 2022 3:36 PM
Type: Javascript
강의 명: 이론부터 실전까지 모든 것을 담은 자료구조/알고리즘

반복문 for

선언문(Init Expression), 조건문(Test Expression), 증감문(Update Expression) 형태로 이루어진 반복문
조건문이 fail이 되기 전까지 코드 블록을 계속적으로 반복 수행
선언문, 조건문, 증감문 자리에 공백 입력 가능

  • for(선언문; 조건문; 증감문) { }
let s = ''
for(let i=0; i<3;i++) { // 결과값 :
  s += '#'              // #
  console.log(s);       // ##
}                       // ###

2중 for문

for(let i=0; i<3;i++) {
  let s = ''
  for(let j=0; j<3; j++) {
    s += '#'        // 결과값 :
  }                 // ###
  console.log(s)    // ###
}                   // ###

for … in 반복문

객체의 key, value 형태를 반복하여 수행하는데 최적화 된 유형
첫 번째부터 마지막까지, 객체의 키 개수만큼 반복한다.

for … of 반복문

Collection 객체 자체가 Symbol.iterator 속성을 가지고 있어야 동작 가능한 유형
배열이나 문자열에만 사용 가능함

for-in 문이 객체의 속성들을 순회하기 위한 구문이라면, for-of 문은 배열의 요소들, 즉 data 를 순회하기 위한 구문이다. 정확히는 일반 Object 요소를 제외한  ArrayMapSet 등의 객체 타입을 순회할 수 있다. (추가로 String도 가능하다. 문자열로 이루어진 배열로 보기 때문)’

let text = "javascript";
let result = ""
for(let x of text) {
  result += x
}
console.log(result) //javascript

반복문 while

조건문이 참일 때 코드 블록을 계속해서 반복 수행하는 반복문

  • for 문에 비해 선언문과 증감문 없이 loop를 수행하며, 무한 loop 등 수행시 많이 사용
  • 조건문을 코드 블록보다 아래로 옮긴 do … while 반복문도 존재함(최소 한번의 수행은 꼭 필요할 때 많이 사용)
  • while 문은 조건문이 참이어야 수행하지만, do… while 문은 일단 수행하고 조건이 참인지 그 후에 판단함.
let i = 0;
while(i<3) { 
  console.log(i);
  i++ // 무한 루프에 빠지지 않으려면 변수의 업데이트가 중요함
} // 결과값: 0 / 1 / 2

반복문 제어

break

반복문 수행 시 코드 블록을 탈출할 때 사용하는 식별자

  • if문 같은데에서 참일 경우 실행하고 반복문을 빠져나오기 위해 많이 사용

다중 반복문일 경우 가장 안쪽의 반복문을 종료

Label 을 통하여 다증 반복문 한번에 종료 가능하다.

  • Label: 코드반복문 앞에 콜론과 함께 쓰이는 식별자

continue

반복문 수행 시 코드 블록 실행을 해당 라인에서 중지하고 블록 코드를 종료 시킨 후 반복문 내 명시된 조건을 판단

  • 특정 조건의 뒷 코드를 skip하고 처음부터 다시 실행하고 싶을 때 사용한다.
// break
let text = "";

for(let i = 0; i<10; i++) {
  if(i ===3) break;
  text += i;
}
console.log(text); // 012 
// i가 3이되자 반복문 빠져나옴

//continue
text = "";
for(let i = 0; i<10; i++) {
  if(i === 3) continue;
  text += i;
}
console.log(text); //012456789
// i가 3일 때는 뒤에 실행하지 않고 반복문 처음으로 돌아감

Label

프로그램 내 특정 영역을 지정하여 별도 이름을 붙이는 식별자

break와 continue를 사용하는 반복문 안에서만 사용 가능하며, break와 continue 지시자 위에 있어야 함.

일반적으로 잘 사용하는 건 아님.

profile
일상 속 선한 영향력을 만드는 개발자를 꿈꿉니다🧑🏻‍💻

0개의 댓글

관련 채용 정보