ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2023 - 05 - 15 조건문, 조건부실행, 삼항연산자, 단축평가
    Today I Learned/TIL 05 2023. 6. 1. 07:21

     

    오늘 할일

    자바스크립트 1주차 강의 듣기

     

    오늘 배운것

    1. 조건문 (if문, else문, else if 문, switch / break문)

    2. 조건문 중첩

    3. 조건부실행(&&),

    4. 삼항연산자, 단축평가

    5. truthy한 값, falsy한 값

     

    1. if문

    let x = 10;
    if (x > 0){
        console.log("x는 양수입니다.")
    } 
    
    //x는 양수입니다. (선언된 변수값 10이 if문을 충족시킴)

     

    y의 길이가 5보다 크거나 같으면 길이를 출력하시오.

    let y = "Hello World"
    
    if (y.length >= 5){
        console.log(y.length)
    }
    
    // 11 (선언된 변수값 "Hello World" 이 if문을 충족시킴)

     

    2. if~ else 문

    let x = -3;
    if (x > 0) {
        console.log("x는 양수입니다.")
    } else {
        console.log("x는 음수입니다.")
    }
    
    // x는 음수입니다. (선언된 변수값 -3이 if문을 충족시키지 못함)


    3. if - else if - else 문

    let x = 10;
    
    if (x < 0){
        console.log("1")
    } else if (x >=0 && x < 10) {
        console.log("2")
    } else {
        console.log("3")
    }
    
    // 3 (선언된 변수값 10이 if문과 else if문 조건을 충족시키지 못함)


    4. switch문

    변수의 값에 따라, 여러 개의 경우(case)중 하나를 선택. 디폴트값(defalut)이 있음
    case에는 콜론(:)을 쓰고, case가 끝날 때 반드시 break문을 같이 넣어야 함.
    맨 마지막에 default값을 항상 넣어주어야 한다.

    let fruit = "kiwi";
    
    switch (fruit) {
        case "apple":
            console.log("사과입니다.");
            break;
        case "banana":
            console.log("바나나입니다.");
            break;
        case "kiwi":
            console.log("키위입니다.");
            break;
        default:
            console.log("아무것도 아닙니다.");
    }
    
    // 키위입니다.



    조건문 중첩 (조건문 안에 또 조건문 넣기)

     

    1. 조건문을 이용해 미성년자 구분하기

    let age = 20;
    
    if (age >= 18) {
        console.log("성인입니다.")
    } else {
        console.log("미성년자입니다.")
    }
    
    // 성인입니다.

     

    2. 조건문 중첩을 이용해 미성년자, 성별 구분하기.

    let age = 20;
    let gender = "여성";
    
    if (age >= 18) {
        console.log("성인입니다.")
        if (gender === "여성") {
            console.log("성인 여성입니다.")
        } else {
            console.log("성인 남성입니다.")
        }
    } else {
        if (gender === "여성"){
            console.log("미성년 여성입니다.")
        } else {
            console.log("미성년 남성입니다.")
        }
        console.log("미성년자입니다.")
    }

     

     

    조건부 실행 (&& an문,   || or 문). 

    if를 쓰지 않아도 조건문이 성립됨. and 조건 (&&) 또는, or조건 (||) 때문에 뒤에부분이 실행됨.

    and 조건(&&)
    
    let x = 10;
    (x > 0) && console.log("x는 양수입니다.")
    
    
    // x는 양수입니다.
    조건 (x > 0)을 충족하므로 뒤에부분 실행.


    or 조건 (||)
    삼항연산자와 단축평가

    or 조건 (||)
    
    let y;
    let z = y || 20;
    console.log(z); 
    
    
    // 20
    
    y는 선언만 하고 할당안함. 즉 y는 undefined
    let z = y ||20 은. y가 undefined이면 20을 설정해달라는 뜻(조건문)

     

    truthy한 값, falsy 한 값

    if (조건 = true 또는 false값) {  main logic }

    여기서 '조건'에 들어갈수 있는 경우 = truthy한 값
    조건에 들어갈수 없는 경우 =  falsy 한 값 (조건문에 넣어도 실행안됨)

    if (0) {
        // main logic
        console.log("Hello World")
    }
    
    if ("") {
        // main logic
        console.log("Hello World")
    }
    
    if (null) {
        // main logic
        console.log("Hello World")
    }
    
    if (undefined) {
        // main logic
        console.log("Hello World")
    }
    
    if (NaN) {
        // main logic
        console.log("Hello World")
    }
    
    if (false) {
        // main logic
        console.log("Hello World")
    }
    
    if (true) {
        // main logic
        console.log("Hello World")
    }

     

    여기서 맨 마지막 true만 제외하고는, 나머지 조건들은 falsy한 값들이기 때문에 출력이 안됨.

    마지막 true만 truthy한 값이므로 "Hello World"출력됨

    댓글

Designed by Tistory.