(4) 조건문

franchesca·2021년 3월 7일
0

JavaScript

목록 보기
4/7

Lesson (4) - 조건문 (Conditional)

  • 조건을 배우기 위해서는 Boolean 타입에 대한 이해 필요
    ex) let isAdult = true; //또는 false
  • 조건문: 조건을 판별하는 기준을 만드는 것
  • 조건문에는 반드시 비교 연산자(comparision operator) 가 필요
    ex) 3 > 5; //false
    여기서 비교 연산자는 >
  • 비교의 결과는 늘 boolean, 즉 true 또는 false

다양한 비교 연산자

  • > 초과
  • < 미만
  • >= 이상
  • <= 이하
  • === 같다
  • !== 다르다

사용하면 안 되는 비교 연산자

  • == 같다
  • != 다르다
    타입을 엄격하게 비교하지 않는다!
    ex) 1 === '1' //false
    1 == '1' //true

How to use a conditional

if (조건1) {
// 조건 1이 통과할 경우
} else if (조건2) {
// 조건 1이 통과하지 않고
// 조건 2가 통과할 경우
} else {
// 모든 조건이 통과하지 않는 경우
}

  • 조건에는 boolean 타입으로 결과가 나오는 비교구문이 들어간다

두 가지 조건이 한번에 적용되는 경우

  • if문을 중첩해서 사용 가능
  • 논리 연산자(logical operator)

1) AND 연산자
ex) isStudent && isFemale
true && ture // true
true && false // false

2) OR 연산자
ex) isStudent || isFemale
true || true // true
true || false // true

3) NOT 연산자
truthy, falsy 여부를 반전시킨다
ex) !isStudent && isFemale
!false // true
!(3>2) // false
!undefined // ? -> undefined는 falsy한 값이어서 true
!'Hello' // ? -> 문자열은 truthy한 값이어서 false

6가지의 falsy 값

다음은 if문에서 false로 변환되므로, if구문이 실행되지 않는다
이 6가지를 제외한 나머지는 다 truthy한 값이다

  • if (false)
  • if (null)
  • if (undefined)
  • if (0)
  • if (NaN)
    NaN은 Not a Number
  • if ('')
    아무런 값이 없는 문자열

Self-check

  • truthy와 falsy 가 조건문에서 작동하는 방식을 이해할 수 있다.
    비교연산자를 통한 엄격한 비교(=== , !==)에 대해 이해할 수 있다.
    if 와 else if , else를 이해하고 무리없이 활용할 수 있다.
    논리연산자를 (&&, ||, ! ...)을 통해 복잡한 조건을 간결하게 작성할 수 있다.
    조건문 문제로 에러 메세지 알아보기
    코플릿 에러 메세지 읽는 법을 배우고, 이를 기반으로 문제를 고치는 방법을 배웁니다.
    조건문 문제로 배우는 알고리즘
    코플릿 조건문 13번 문제 해결 방법을 익히면서, 문제를 체계적으로 해결하는 방법을 배운다.
    복잡한 조건문을 활용하여 실생활에서 쉽게 마주할 수 있는 문제를 해결할 알고리즘을 짤 수 있다.

Pseudocode

  • 인간에게는 당연한 과정을 기계가 이해할 수 있도록 하나하나 쪼개서 논리적으로 풀어내야 한다
  • 수도코드(pseudocode): 프로그램의 절차 하나하나를 우리가 실제로 사용하는 일반적인 언어(자연어)로 작성하는 방법
  • 과정
    1) 문제 분해
    ex)
  • 10의 자리로 Grade Letter를 구분한다.
  • 1의 자리로 기호(+,-)를 구분한다.
    2) 의사코드 작성
  • score가 100이면 즉시 A+가 최종 결과가 된다.
  • score에서 10의 자리를 얻어낸다.
  • score에서 1의 자리를 얻어낸다.
  • 10의 자리가 6이면, Grade Letter는 D 이다.
  • 10의 자리가 7이면, Grade Letter는 C 이다.
  • 10의 자리가 8이면, Grade Letter는 B 이다.
  • 10의 자리가 9이면, Grade Letter는 A 이다.
  • 1의 자리가 0~2 이면, (Grade Letter 뒤에 붙는) 기호는 -이다.
  • 1의 자리가 3~7 이면, (Grade Letter 뒤에 붙는) 기호는 빈 문자열이다.
  • 1의 자리가 8~9 이면, (Grade Letter 뒤에 붙는) 기호는 +이다.
  • 최종 결과는 Grade Letter와 기호를 문자열을 조합한다.
  • 최종 결과를 리턴한다.
    3) 코드로 옮기기
profile
말하기 보다 생각하는, 생각하기보다 볼 줄 아는 개발자가 되려고 합니다✨

0개의 댓글