9_JavaScript

charlie_·2021년 6월 8일
0

TIL

목록 보기
10/42

# 오늘 한 일

1. 연산자

1) +
  let x = 'my '
  let y = 'cat'
  console.log(x+=y); // 결과값: my cat

2) % (reminder)
  console.log(5%2); // 결과값 1

3) \** (squared)
  console.log(2\**3); // 결과값 8

4) || (OR)
  const value1 = true;
  const value2 = 4 < 2;
  function check(){
      for(let i = 0; i < 5; i++){
          console.log(i);
      }
      return true;
  }

  console.log(`or: ${value1 || value2 || check()}`); // 결과값: true

5) && (AND)
* AND연산자는 조건 중에 처음으로 false가 나오는 곳에서 멈춘다.

6) ! (NOT)

7) = (Equality)
  const stringFive = '5';
  const numberFive = 5;

  console.log(stringFive == numberFive); // 결과값 true
  console.log(stringFive != numberFive); // 결과값 false
  console.log(stringFive === numberFive); // 결과값 false
  console.log(stringFive !== numberFive); // 결과값 true

  const member1 = {name: 'charlie'};
  const member2 = {name: 'charlie'};
  const member3 = member1;
 
  console.log(member1 == member2); // 결과값 false
* reference가 다르므로 false

  console.log(member1 === member2); // 결과값 false 
* reference가 다르므로 false

  console.log(member1 === member3); // 결과값 true
* reference가 같으므로 true
  • OR연산자는 조건 중에 처음으로 true가 나오는 곳에서 멈춘다. 그러므로 true 조건이 일찍 도출될 수록 연산이 빨라진다.
    (#헤비한 조건을 앞에 두면 연산에 시간이 더 걸리겠지....)

  • == (타입이 달라도 의미하는 바가 같으면 true값을 반환)

  • ===는 strict equality(완전히 일치할 때만 true)

  • 일반적으로 strict equality를 사용

2. preIncrement & postIncrement

1) preIncrement
  let counter = 2;
  const preIncrement = ++counter;
 
  console.log(`${preIncrement}, ${counter}`); // 결과값: preIncrement 3, counter 3

2) postIncrement
  const postIncrement = counter++;
 
  console.log(`${postIncrement}, ${counter}`); // 결과값: postIncrement 3, counter 4

3. 조건문

  const name = 'charlie';
 
  if (name === 'charlie') {
      console.log('Welcome, charlie');
  } else if (name === 'leezche') {
      console.log('Hi, leezche');
  } else {
      console.log('unknown');
  }

* 삼항 연산자 (=Ternary operator)
  형식: condition ? value1 : value2;

  console.log(name === 'Charlie' ? 'Hi, Charlie' : 'unknown');

4. Switch statement

  const browser = 'Chrome'; // 결과값: love you
  switch (browser) {
      case 'IE':
          console.log('go away!');
          break;
      case 'Chrome':
      case 'Firefox':
          console.log('love you!');
          break; 
      default:
          console.log('same all!');
          break;    
  }

5. 반복문

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

2) do while
  let a = 5;
  do {
      console.log(`do while: ${a}`);
      a--;
  } while (a > 0);

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

* nested loop는 사용 자제
ex.
  for (let i = 0; i < 2; i++) {
      for (let j = 0; j < 3; j++) {
          console.log(`i: ${i}, j: ${j}`);
      }
  }

6. 연습

Q1. 0 ~ 10 사이의 짝수값만 도출하시오.

A1.
  for (let i = 0; i < 6; i++) {
      console.log(`${i*2}`);
  }

1) 조건: continue 사용
  for (let i = 0; i < 11; i++) {
      if(i%2 === 1) {
          continue;
      } else {
          console.log(`${i}`);
      }
  }

Q2. break를 사용하여 0 ~ 8까지 도출하시오.

A2.
  for (let i = 0; i < 11; i++) {
      if(i === 8) {
          break;
      } else {
          console.log(`${i}`);
      }
  }

* continue는 건너뛰는거고 break는 종료하는 것

내일 할 일

  • 자바스크립트 공부
  • 자기소개서 페이지 업데이트 (스크립트 추가하기)
profile
매일 하루에 딱 한 걸음만

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN