A Developing Developer

03. 조건문 본문

 

3-1 조건문

  • if 조건문 : 조건에 따라 코드를 실행하거나 실행하지 않도록 하기 위해 사용하는 구문
if(불 값이 나오는 표현식) {
    불 값이 참일 때 실행할 문장
}

 

  • else 구문 : if 조건문 뒤에 사용하며, if 조건문이 거짓일 때 사용
if(불 값이 나오는 표현식) {
    불 값이 참일 때 실행할 문장
} else {
    불 값이 거짓일 때 실행할 문장
}

 

  • 중첩 조건문 : 조건문을 중첩해서 사용하는 경우
if (불 값이 나오는 표현식1) {
    if (불 값이 나오는 표현식2) {
        표현식2가 참일 때 실행할 문장
    } else {
        표현식2가 거짓일 때 실행할 문장
    }
} else {
    if (불 값이 나오는 표현식3) {
        표현식3이 참일 때 실행할 문장
    } else {
        표현식3이 거짓일 때 실행할 문장
    }
}

 

  • if else if 조건문 : 중첩 조건문에서 중괄호를 생략한 형태로, 겹치지 않는 3가지 이상의 조건으로 나눌 때 사용
if (불 표현식) {
    문장
} else if (불 표현식) {
    문장
} else if (불 표현식) {
    문장
} else {
    문장
}

 

-  사용자에게 1월 ~ 12월 까지 입력받아 무슨 계절인지 알려주는 코드

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>3-1</title>
    <script>
        const a = Number(prompt('월을 입력해주세요.', ''))

        if (a === 1 || a === 2 || a === 12) {
            alert('겨울입니다.')
        } else if (a === 3 || a === 4 || a === 5) {
            alert('봄입니다.')
        } else if (a === 6 || a === 7 || a === 8) {
            alert('여름입니다.')
        } else if (a === 9 || a === 10 || a === 11) {
            alert('가을입니다.')
        } else {
            alert('1월 부터 12월 중 입력해주세요')
        }
    </script>
</head>
<body>

</body>
</html>

 

 

3-2 switch 조건문과 짧은 조건문

  • switch 조건문 : 값에 따라서 조건 분기를 걸어주는 조건문
switch (자료) {
    case 조건A:
        break
    case 조건B:
        break
    default:    //생략가능
        break
}

 

  • 조건부 연산자 : A ? B : C 와 같은 형태로 피연산자 3개를 갖는 연사자, 조건 분기에서 사용 가능
불 표현식 ? 참일 때의 결과 : 거짓일 때의 결과

 

  • 짧은 조건문 : 논리 연산자의 특이한 성질을 사용해서 조건 분기에 활용하는 코드

- 논리합 연산자를 사용한 짧은 조건문

true || OOO

 

논리합 연산자를 사용한 표현식은 뒤에 어떠한 값이 들어가도 항상 참이다.

 

불 표현식 || 불 표현식이 거짓일 때 실행할 문장

- 논리곱 연산자를 사용한 짧은 조건문

false && OOO

논리곱 연산자는 양변이 모두 참일 때만 참이기 때문에 위의 표현식은 항상 거짓이다.

 

따라서 논리곱 연산자는 좌변이 것짓이면 우변을 실행하지 않는다.

결과가 거짓인 불 표현식 && 불 표현식이 참일 때 실행할 문장

 

- 사용자가 태어난 연도를 입력하면 해당 년도의 띠를 알려주는 프로그램

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>3-2</title>
    <script>
        const rawInput = prompt('태어난 해를 입력해주세요.', '')

        const year = Number(rawInput)

        const e = year % 12

        let result

        switch (e) {
            case 0 :
                result = `${year}년생은 원숭이띠 입니다.`
                alert(result)
                break
            case 1 :
                result = `${year}년생은 닭띠 입니다.`
                alert(result)
                break
            case 2 :
                result = `${year}년생은 개띠 입니다.`
                alert(result)
                break
            case 3 :
                result = `${year}년생은 돼지띠 입니다.`
                alert(result)
                break
            case 4 :
                result = `${year}년생은 쥐띠 입니다.`
                alert(result)
                break
            case 5 :
                result = `${year}년생은 소띠 입니다.`
                alert(result)
                break
            case 6 :
                result = `${year}년생은 호랑이띠 입니다.`
                alert(result)
               break
            case 7 :
                result = `${year}년생은 토끼띠 입니다.`
                alert(result)
                break
            case 8 :
                result = `${year}년생은 용따 입니다.`
                alert(result)
                break
            case 9 :
                result = `${year}년생은 뱀띠 입니다.`
                alert(result)
                break
            case 10 :
                result = `${year}년생은 말띠 입니다.`
                alert(result)
                break
            case 11 :
                result = `${year}년생은 양띠 입니다.`
                alert(result)
                break
        }

    </script>
</head>
<body>

</body>
</html>

============================================================================================

출처 : 혼자 공부하는 자바스크립트

============================================================================================

 

Node.js 사전캠프 2일차

 

if문 구성이나 사용자체는 별거 없다. 문제는 어떻게 활용하느냐 인거같은데...

 

꾸준히 하다보면 늘겠지~

 

오늘은 한 챕터밖에 못했다...

 

오전에 팀원들과 TMI 대화하고 나니 점심시간 까지 붕 떠버렸다...

 

내일은 다시 정신차리고 최소 두 챕터 진도나가자!!