상세 컨텐츠

본문 제목

시베리안 허숙희의 자바스크립트 비기닝 5 (조건 & 자동 형변환)

자바스크립트

by e7e 2023. 6. 2. 16:46

본문

자바스크립트 변수에 대해 쪼금 알게 되었땅!

바로 기피 들어가면 기피하게 되닝, 얄팍하게  먼저 조건문에 대해  얄팍한 만큼만 알아보도록 하장

자바스크립트 IF 문법  확인은  MDN 사이트에서 스스로 하장!(당신은 매우 능동적이당!)

조건문.html을 아래 내용처럼 맹글고, 브라우져에서 결과를 예리하게 눈팅하장!

<!DOCTYPE html>
<meta charset="UTF-8">
<script>
    var v_number = 272;
    if(v_number){
        alert("v_number는 " + "true(참)이당");
    }

    v_number = 0;
    if(v_number){
        alert("넌 날 볼 수 없당 v_number는 false니깡");
    }


    var v_str = "roze";
    if(v_str){
        alert("v_str는 " + "true(참)이당");
    }

    v_str = "";
    if(v_str){
        alert("넌 날 볼 수 없당 v_str는 false니깡");
    }

    var v_arr = [];
    var v_obj = {};
    if(v_arr && v_obj){
        alert("보이나요 제강? ");
    }

    if("자바스크립트는 잼이써용?") alert("그럼용 너무 잼나영!!");
    if(!0) alert("0은 false !를 붙여 뒤집으면 true 돼지용? 머용?");
</script>

JAVA와 같은 정적언어에 익숙한 사람 눈에는 미리 에러가 보일 것이당!

if(조건) 에서 조건은 true/false  boolean타입이 와야 한다고 믿기 때문이당!

하지만 자바스크립트는 동적언어당 

자동으로 if문 조건절에 오는 데이타타입을 boolean 타입으로 바꾼당!

실행 결과를 정리해 보면

              1. 문자열은 ""  빼고는 모두 참(true)이당!

              2. 숫자는 0 빼고는 모두 참(true)이당!

              3. 객체(배열,JSON)은 빈 객체이어도 참이당!

              4. undefined, null, NaN 등은 직접 어떻게 되는지 확인해 보도록 하장( NaN -> Not a Number)

 

if문 안의 내용이 길 때는 상관없는데, 짧을 때는 왠지 코드가 낭비되는 느낌으로 아름답지 못하당

요따구 상황에서 삼항연산자?를 사용하게 되는뎅, 코드가 간략해 진당!

이 기회에 새로 인기를 얻고 있는 ?? 연산자도 괘니 그양 JUST 확인해서 악세사리를 늘리장!

??는 왼쪽이 null이나 undefined일 때 오른쪽 값으로 대체된당.(헷깔릴 수 있당! 괜찮당!)

뭐 쓰고 싶지 않다면 안 써도 된당. 단지 다른 사람 코드를 읽을 수 있어야 하닝 알아두장

삼항연산자.html을 아래 처럼 맹글고 브라우져에서 역시 아기 고양이 눈빛으로 확인하장

<!DOCTYPE html>
<meta charset="UTF-8">
<script>
    var v_cond = "";
    var v_rslt;
   
    /* 아래 3항연산자 ?와 같은 의미의 if else 문 
    if(v_cond){
        v_rslt = "차미얌";
    }else {
        v_rslt = "거지시넹";
    }
    */

    v_rslt = v_cond?"차미얌":"거지시넹";
    alert("눈팅1 " + v_rslt);
    
    
    /******  ??연산자는 null coalesing(널 병합) 연산자 *****/ 
    var v_test = null // undefined 여도 상관없음
    var v_merong = v_test??"널이구낭";
    alert("눈팅2 " + v_merong);

    v_test = "안녕 로젱";
    v_merong = v_test??"널이구낭";
    alert("눈팅3 " + v_merong);

</script>

 

switch문은 firmware개발에는 디바이스 동작이 스펙화되었기 때문에 참 많이 쓰인당!

if else if 문과 같은 의미 이기 때문에 구우지 여기서 다루고 싶지는 않당!(사실 귀차니즘이당)

가독성 여부를 따져서 스스로 사용여부를 결정하장!(당신은 very 긍정적이당당!!)

 

우린 일상 현실속에서 본인이 중요하다거나, 관심을 가진 것에는 아주 치밀한 잣대를 적용

조건 탐색을 한당!, 그 맘으로 조건문을 맹근다면 이미 훌륭한 조건 다린(Expert)이당!

길이 보인다면 설령 되도라 오게 될 두려우미 띰장을 very 뚜드리더라도 일단 가보장

그거이  very 긍정적인 땅신의 인생을 저거도 비어있는 상태로 두진 않을 것이당!

 

당신이  걷는 그 길을 당신의 갬성으로 인테리어 아웃테리어 하랑!

 

 

https://www.youtube.com/watch?v=J3VZ78hWhQw 

 

관련글 더보기