Javascript - 조건문

KimSeongTae·2021년 7월 27일
0

JavaScript

목록 보기
3/6

1. 조건문(if)

조건문이란 주어진 조건에 따라 코드를 실행하거나 실행하지 않는 문입니다.

if (조건식){
  동작문
}

// 예시

> if (true){
  console.log("if문");
  }

  if< undefined

> if (false){
  console.log("실행x");
}
< undefined

조건문 은 위와 같은 형태로 이루어 진다.




2. else, else if, switch

1) else를 사용하여 두 방향으로 나누기

만약 조건식이 true일때 a, false일때 b를 출력하고 싶다면 어떻게 해야 할까?


if (조건식) {
  동작문;
} else {
  동작문;
}

// 예시

if (true) {
  console.log("a");
} else {
  console.log("b");
}

2) else if를 사용하여 여러방향으로 나누기

if (조건식) {
  동작문;
} else if(조건식){
  동작문;
} else {
  동작문;
}

//예시

const rank = 2;
if (rank === 1) {
  console.log('금메달');
} else if (rank === 2) {
  console.log('은메달');
} else if (rank === 3){
  console.log ('동메달');
} else {
  console.log('다음기회에');
}

//이렇게 코드를 친다면 console에 은메달이 출력 될 것이다.

3) switch문

조건문에는 ifans dhldpeh switch문이 있습니다. if문과 swith문은 조건을 충족할 때 실행된다는 공통점도 있지만, 차이점도 있다.

switch(조건식) {
  case 비교조건식 : 
    동작문;//조건식과 비교조건식이 같으면 동작문을 실행한다.
}

// 예시

let value = 'A';
  switch(value) {
    case 'A' :
      console.log('A');
  }
  //value랑 비교조건식 'A'가 같으므로 console.log가 실행한다.

if문과 switch문의 차이점이 있다.

const rank = 2;

if (rank === 1) {
  console.log('금메달');
} else if (rank === 2) {
  console.log('은메달');
} else if (rank === 3){
  console.log ('동메달');
} else {
  console.log('다음기회에');
}
// 이 상황에서 console에 '은메달'이 출력 된다.

const rank = 2;

switch(rank) {
  case 1 :
    console.log('금메달');
  case 2 :
    console.log('은메달');
  case 3 : 
    console.log('동메달');
  default : 
    console.log('다음기회에');
}
// 이러한 상황에서는 '은메달','동메달','다음기회에' 셋다 출력이 된다. 즉, 일치 하는 부분 아래로 쭉 출력이 된다는 것이다.

switch(rank) {
  case 1 :
    console.log('금메달');
    break;
  case 2 :
    console.log('은메달');
    break;
  case 3 : 
    console.log('동메달');
    break;
  default : 
    console.log('다음기회에');
}
// 이렇게 한다면 '은메달'만 출력이 될 것이다.



3. 조건부 연산자 (삼항 연산자)

if문과 switch문 외에도 분기 처리에 사용하는 식이 있다. 이를 조건부 연산자 (삼항 연산자)라고 한다.

조건식 ? 참일때 식 : 거짓일 때 식

//예시

> 5 > 0 ? '참입니다.' : '거짓입니다.';
< "참입니다."

위처럼 표현 할 수 있다.

조건부 연산자도 중첩해서 사용 할 수 있다. 하지만 가독성을 위해 ()로 감싸주면 가독성이 더 좋을 것이다.

let c1 = true;
let c2 = false;
let value = c1 ? (c2? '둘다 참' : 'c1만 참') : 'c1이 거짓';

console.log(value);
// 이렇게 된다면 'c1만 참'이 출력 될 것이다.

조건부 연산자를 잘 구별하는 방법은 들여쓰기를 잘 활용하면 좋다

let value = c1
  ? c2
    ? '둘다 참'
    : 'c1만 참'
  : 'c1이 거짓'
//들여쓰기를 활용한 방법

0개의 댓글