[JS] 07. review

Seomne·2023년 2월 12일
0
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 변수 : 데이터를 저장하는 공간
        // var varName = 123; // varName에 123 값을 저장한다

        // scope(유효범위)
        // var : 함수 단위의 유효범위를 갖는다.
        // let, const : 블록{} 단위의 유효범위를 갖는다.

        // 자료형, 데이터타입
        /*
            문자형, 숫자형, 논리형
            null(명시적, 의도적으로 비움), undefined(자연발생)
            NaN (연산오류를 나타내는 메세지 - 숫자형데이터)
        */

        /*
            (산술연산자)
            + - * / %
            ++ -- (1씩 증가, 감소)
            += -= *= /= %=
            변수 += 10;
            변수 = 변수 + 10;

            (비교연산자)
            ==  (값이 같다)
            === (값과 데이터형태 모두 같다)
            !=  (값이 다르다)
            !== (값이랑 데이터형태 모두 다르다)

            < > <= >=
        */

        /*
            조건문
            - 특정한 조건에 따라 코드 실행을 제어하는 문
            - 조건식(참과 거짓으로 판별가능한 식)의 판별 결과에 따라 실행될 코드블록을 결정

            if (조건식1) {
                조건식1이 참일 경우 실행
            } else if(조건식2) {
                조건식2가 참일 경우 실행
            } else {
                그 어떠한 조건식에도 참이 아닌 경우 실행
            }

            prompt를 통해서 휴대전화 뒷자리를 물어보고,
            1111 : 맥북 프로 당첨
            2222 : 맥북 에어 당첨
            3333 : 아이패드 프로 당첨
            4444 : 아이폰 14프로 당첨
            그 외 : 꽝
        */

        // let gift = prompt("휴대전화 맨 뒷자리를 입력해주세요");

        // if (gift == 1111) {
        //     alert('맥북 프로 당첨!');
        // } else if (gift == 2222) {
        //     alert('맥북 에어 당첨!');
        // } else if (gift == 3333) {
        //     alert('아이패드 프로 당첨!');
        // } else if (gift == 4444) {
        //     alert('아이폰 14프로 당첨!');
        // } else {
        //     alert('꽝!');
        // }

        /*
            선택문(switch-case문)
            - 표현식(보통 변수가 들어감)의 대조 결과에 따라 실행될 코드를 결정

            switch(표현식) {
                case 표현식1 : 표현식이 표현식1에 해당될 경우 실행될 구문
                break;
                case 표현식n : 표현식이 표현식n에 해당될 경우 실행될 구문
                break;
                default : 그 어떠한 표현식에도 해당되지 않을 경우 실행될 구문(생략 가능)
            }

            장점 : 간결하다, 보기좋다
            단점 : 실행문이 길어지면 가독성이 떨어진다
            유의점 : 대소비교 불가능(조건대조)
        */
        let gift = prompt("휴대전화 맨 뒷자리를 입력해주세요");
        gift = Number(gift); // 문자를 숫자로 형 변환시키기

        let result;

        switch (gift) {
            case 1111: result = "맥북프로";
                break;
            case 2222: result = "맥북에어";
                break;
            case 3333: result = "아이패드프로";
                break;
            case 4444: result = "아이폰14프로";
                break;
        }
        // if (result) {
        //     alert(`축하합니다! ${result}에 당첨되었습니다!`);
        // } else {
        //     alert('꽝! 다음 기회에!');
        // }

        /*
            삼항조건연산자
            조건식 ? 조건식이 참일 경우 실행될 구문 : 조건식이 거짓일 경우 실행될 구문
        */
        result ? alert(`축하합니다! ${result}에 당첨되었습니다!`) : alert('꽝! 다음 기회에!');
    </script>
</body>
</html>
profile
상생하며 성장하는 퍼블리셔

0개의 댓글