[JS] 드림코딩 JS 공부 #4-2

💡 연산자와 반복문에 대해서 공부해보자

🔴 Conditional operators


🟤 if, else if, else

const name = 'coder';
if (name === 'ellie') {
  console.log('Welcome, Ellie!');
} else if (name === 'coder') {
  console.log('You are amazing coder');
} else {
  console.log('unkwnon');
}
  • if는 안에 있는 statement가 true면 블록 안을 실행한다.

🟠 Ternary operator : ?


🟤 삼항 연산자

// condition ? value1 : value2;
console.log(name === 'ellie' ? 'yes' : 'no');
  • 조건이 참이면 value1, 거짓이면 value2 값을 출력해준다.
  • 값을 할당하거나 간단하게 출력할 때 많이 사용한다.

🟡 Switch statement


const browser = 'IE';
switch (browser) {
  case 'IE':
    console.log('go away!');
    break;
  case 'Chrome':
  case 'Firefox':
    console.log('love you!');
    break;
  default:
    console.log('same all!');
    break;
}
  • switch문 안에 있는 browser의 값이 IE이면 case 'IE' 안에 문을 출력하고, break -> 멈춘다.

  • 동일한 문장을 출력하면 Chrome, Firefox처럼 묶어서도 쓸 수 있다.

  • if-else-if-else를 반복한다면 -> switch문을 고려해보자

  • 후에 TypeScript에서 정해져있는 타입을 검사하거나 enum 비슷한 아이들을 검사할 때는 -> switch문 쓰는 것이 가독성에 좋음

🟢 Loops


  • 계속해서 반복적으로 도는 것

🟤 while

let i = 3;
while (i > 0) {
  console.log(`while: ${i}`);
  i--;
}

🟤 do while

do {
  console.log(`do while: ${i}`);
  i--;
} while (i > 0);
  • 먼저 do블럭을 실행한 다음, 조건이 맞는지? 안맞는지?를 검사한다.
  • 블럭을 먼저 실행하고 싶다 -> do while문
    조건문이 맞을 때만 실행하고 싶다 -> while문

🟤 for

  • for(begin; condition; step)
  • 시작하는 문장 ; 조건문 ; 어떤 스텝을 밟아 나갈 것인지?
  • begin은 딱 한번만 실행된다.
  • 그 이후에는 condition -> 블록실행 -> step -> condition -> 블록실행 -> step -> 조건 false면 stop 이 반복된다.
for (i = 3; i > 0; i--) {
  console.log(`for : ${i}`);
}
for (let i = 3; i > 0; i = i - 2) {
  // inline variable declaration
  console.log(`inline variable for: ${i}`);
}
  • for 안에 inline variable declaration -> 블록안에 let이라는 지역변수를 선언해서 작성하는 방법도 존재
// nested loops
for (let i = 0; i < 10; i++) {
  for (let j = 0; j < 10; j++) {
    console.log(`i: ${i}, j: ${j}`);
  }
}
  • while문, for문 둘다 nesting해서 작성 가능하다.
  • for문 안에 또 for문을 작성할 수 있다.
  • i = 0 일 때, j를 0~9까지 실행, 다시
    i = 1 일 때, j를 0~9까지 실행, 다시 ... 이게 조건문이 충족할 때 까지 계속된다.
  • cpu에 별로 좋지 않음 되도록 안쓰는 것이 좋음

🔵 break, continue


  • loop안에서는 break나 continue 같은 키워드를 사용해서 loop를 끝낼 수 있다.
  • break : loop를 완전히 끝내는 것
// q1. 0~10 까지 loop 하는데 8을 만나면 멈춘다 (break 써서)
for (let i = 0; i < 11; i++) {
  if (i > 8) {
    break;
  }
  console.log(`q1. ${i}`);
}
  • continue : 현재꺼만 skip 하고 다음 스텝으로 넘어가는 것
// q2. 0~10 까지 짝수만 출력하시오 (continue 써서)
for (let i = 0; i < 11; i++) {
  if (i % 2 !== 0) {
    continue;
  }
  console.log(`q2. ${i}`);

➕ 추가로 공부할 것
1. enum에 대해서 찾아보기!
2. inline variable declaration 찾아보기!
3. nesting이란? 찾아보기

좋은 웹페이지 즐겨찾기