[Javascript]-반복문

오다경·2022년 11월 28일
0

javascript basic

목록 보기
11/12
post-thumbnail

for문

for 반복문은 어떤 특정한 조건이 거짓으로 판별될 때까지 반복한다.

for (begin; condition; step) {
  // ... 반복문 본문 ...
}
for (let i = 0; i < 3; i++) { 
  console.log(i);
} // 0, 1, 2가 출력된다. 

for문을 구성하는 요소
begin : i = 0 -> 반복문에 진입할 때 단 한 번 실행된다.
condition : i < 3 -> 반복마다 해당 조건이 확인된다. false이면 반복문을 멈춘다.
body : console.log(i) -> -condition이 truthy일 동안 계속해서 실행된다.
step : i++ -> 각 반복의 body가 실행된 이후에 실행된다.

// for (let i = 0; i < 3; i++) console.log(i)
// begin을 실행함
let i = 0
// condition이 truthy이면 → body를 실행한 후, step을 실행함
if (i < 3) { console.log(i); i++ }
// condition이 truthy이면 → body를 실행한 후, step을 실행함
if (i < 3) { console.log(i); i++ }
// condition이 truthy이면 → body를 실행한 후, step을 실행함
if (i < 3) { console.log(i); i++ }
// i === 3이므로 반복문 종료
  • break와 continue
    1) break를 사용하면 언제든 원하는 때에 반복문을 빠져나올 수 있다.
for (let i = 1; i < 10; i++) {
  if (i === 7) {
    break;  // 7이 나오면 반복문을 끝내라
  }
  console.log(i);
} // 1, 2, 3, 4, 5, 6이 출력됨

2) continue는 현재 반복을 종료시키고 다음 반복으로 넘어가고 싶을 때 사용할 수 있다.
단 삼항연산자에서 사용 시 문법 에러를 일으킨다.

for (let i = 1; i < 10; i++) {
  if (i === 7) {
    continue; // 구문을 재실행시킬 수 있어서 8부터 다시 반복문이 실행됨
  }
  console.log(i);
} // 1, 2, 3, 4, 5, 6, 8, 9가 출력됨

while문

while 문은 어떤 조건문이 참이기만 하면 문장을 계속해서 수행한다.

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

조건 (i<3)이 true이면 반복문이 코드가 실행된다. 즉 i< 3을 만족할 동안 i를 출력해준다.

do...while문

do...while 문은 특정한 조건이 거짓으로 판별될 때까지 반복한다.

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

조건이 true인지 아닌지에 상관없이 본문을 최소한 한번이라도 실행하고 싶을 때 사용해야 한다.

  • 대부분 do..while문 보다는 while문이 적합하다.

for...in문

객체에서 주로 사용하고, 객체의 속성들을 반복하여 작업을 수행할 수 있다.
객체 자료형에서 자료들을 하나씩 꺼내고 싶을 때 사용한다.

let dakyung = {
  name: "dakyungOh",
  age: 27,
  dog: "kong",
  hobby: "javascript",
};
for (const prop in dakyung) {
  console.log(prop, dakyung[prop]);
} 
// name dakyungOh
// age 27
// dog kong
// hobby javascript

for...of문

각각의 고유한 특성의 값을 실행할 명령과 함께 사용자 지정 반복 후크를 호출하여, 반복 가능한 객체(array, string, map, set Dom등)를 통해 반복하는 루프를 만든다.

const array1 = ["dakyung", 27, "kong", "javascript"];
for (const element of array1) {
  console.log(element);
} 
// dakyung
// 27
// kong
// javascript
let iterable = "boo";
for (let value of iterable) {
  console.log(value);
}
// "b"
// "o"
// "o"
profile
개발자 꿈나무🌳

0개의 댓글