ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Section 3. 자바스크립트 if/else
    자바스크립트 2023. 3. 23. 17:10

    if문

    const open = true;
    
    if (open) {
      console.log('환영합니다.');
      console.log('즐거운 쇼핑하세요!');
    }

    풀어서 설명하면 open이 true일때 블록내에 있는 것들을 실행하라~ 정도가 된다. 

     

    if ~ else문

    const x = 20;
    
    if (x % 2) {
      console.log('홀수입니다.');
    } else {
      console.log('짝수입니다.');
    }

    x를 2로 나눈 나머지는 0이니까 falsy가 된다. 그러면 else문을 실행하게 되어 '짝수입니다'가 출력되게 된다.

     

    if문은 중첩사용이 가능하다.

    const x = 22;
    
    if (x % 4) { //참이면 이 블럭 실행
      if (x % 2) { //참이면 이 블럭 실행
        console.log('홀수입니다.');
      } else { //거짓이면 이 블럭 실행
        console.log('짝수입니다.');
      }
    } else { //거짓이면 이 블럭 실행
      console.log('4의 배수입니다.');
    }

    22를 4로 나누면 나머지가 2이다. 따라서 참 이므로 그 안에 있는 if문을 실행하게 된다. 여기서 2를 2로 나눈 나머지는 0이 되어 falsy가 되므로 else문이 실행되어 짝수입니다. 라고 출력이 된다. 

     

    if ~ else if ~ 문

    const x = 21;
    
    if (x % 2) { //참이면 이 안의 블럭 실행
      console.log('홀수입니다.');
    } else if (x % 4) { //거짓일때 이 조건이 참이면 실행
      console.log('짝수입니다.');
    } else { //거짓일때 실행
      console.log('4의 배수입니다.');
    }

    하지만 if ~ else if~문을 쓰는 것보다 권장되는 방법이 따로 있다.

    function evalNum () {
      const x = 21;
    
      if (x % 2) {
        console.log('홀수입니다.');
        return;
      }
    
      if (x % 4) {
        console.log('짝수입니다.');
        return;
      }
    
      console.log('4의 배수입니다.');
    }
    
    evalNum(); //evalNum()안에 있는 것들이 실행된다.
    console.log('블록문 바깥');

    return문을 쓰는 방식이 권장되는 방법이다. 

    return문은 함수 실행을 완전히 종료한다.

     

Designed by Tistory.