[JavaScript] 조건문

정진우·2024년 4월 26일
0

JavaScript

목록 보기
4/20
post-thumbnail

조건문

  • 조건문 - 특정 조건에 따라 프로그램의 흐름을 제어하는 제어 구조입니다. 조건문은 조건식의 평가 결과에 따라 다른 코드 블록을 실행하도록 프로그램에 지시합니다.
  • 조건식 - 조건식은 참(True) 또는 거짓(False) 으로 평가되는 표현식입니다. 조건식의 평가 결과에 따라 프로그램이 다른 경로로 분기됩니다. 주로 if, else, else if, switch 등과 같은 형태로 사용됩니다.
  • 동작문 - 동작문은 조건식이 참(True) 일 때 또는 거짓(False) 일 때 실행할 코드 블록입니다. 조건식의 결과에 따라 프로그램이 어떤 동작을 수행할지를 정의합니다. 중괄호 {}로 둘러싸인 코드 블록으로 표현됩니다.
let x = 10;

if (x > 5) {
  // 조건식이 참일 때 실행되는 동작문
  console.log("x는 5보다 큽니다.");
} else {
  // 조건식이 거짓일 때 실행되는 동작문
  console.log("x는 5보다 작거나 같습니다.");
}
// 출력:x는 5보다 큽니다.

거짓(Falsy)으로 취급하는 값

  1. false: 불리언(boolean) 값 중 false는 명시적으로 거짓을 나타내는 값입니다.
  2. 0: 숫자 0은 거짓으로 취급됩니다.
  3. 빈 문자열 (''): 문자열이 비어있을 경우 거짓으로 간주됩니다.
  4. NaN: 숫자가 아닌 값(NaN)은 거짓으로 간주됩니다.
  5. null: null 값은 거짓으로 취급됩니다.
  6. undefined: 정의되지 않은(undefined) 값도 거짓으로 간주됩니다.

조건문의 문법

  • if
  • else
  • else if
  • switch

if 문

  • 가장 기본적인 형태의 조건문으로, 주어진 조건이 참(True)이면 특정 코드 블록을 실행합니다. 만약 조건이 거짓이라면 해당 코드 블록은 실행되지 않습니다.
if (condition) {
  // 조건이 참일 때 실행할 코드
}
let x = 10;

if (x > 5) {
  console.log("x는 5보다 큽니다."); // 조건식이 참일 때 실행됩니다.
}

if문의 중첩

  • if문의 중첩은 하나 이상의 if문을 다른 if문 내에 중첩하여 복잡한 조건 처리를 가능하게 하는 것을 말합니다.
  • 너무 많은 중첩은 코드의 가독성을 저하시킬 수 있습니다. 중첩이 깊어질수록 코드를 이해하기 어려워지므로, 가독성을 고려하여 중첩을 최소화해야 합니다.
if (condition1) {
  // 첫 번째 조건이 참일 때 실행되는 코드
  if (condition2) {
    // 두 번째 조건이 참일 때 실행되는 코드
  } else {
    // 두 번째 조건이 거짓일 때 실행되는 코드
  }
} else {
  // 첫 번째 조건이 거짓일 때 실행되는 코드
}
let x = 10;
let y = 5;

if (x > y) {
  console.log("x는 y보다 큽니다.");
  if (x > 10) {
    console.log("x는 10보다 큽니다.");
  } else {
    console.log("x는 10보다 작거나 같습니다.");
  }
} else {
  console.log("x는 y보다 작거나 같습니다.");
}
// 출력:x는 y보다 큽니다.
// 출력:x는 10보다 작거나 같습니다.

else 문

  • if 문의 조건이 거짓일 때 실행할 코드를 지정합니다.
if (condition) {
  // 조건이 참일 때 실행할 코드
} else {
  // 조건이 거짓일 때 실행할 코드
}
let x = 3;

if (x > 5) {
  console.log("x는 5보다 큽니다."); // 조건식이 참일 때 실행됩니다.
} else {
  console.log("x는 5보다 작거나 같습니다."); // 조건식이 거짓일 때 실행됩니다.
}
// 출력:x는 5보다 작거나 같습니다.

else if 문

  • 여러 개의 조건을 검사할 때 사용하며, 이전 조건이 거짓일 때 다음 조건을 검사합니다.
  • else if문을 활용할 때 else는 반드시 마지막에 붙여야 한다. 중간에 else문이 들어가게 되면 첫 번째 조건식만 평가하고 전체적인 조건문이 종료가 되기 때문이다.
if (condition1) {
  // condition1이 참일 때 실행할 코드
} else if (condition2) {
  // condition1이 거짓이고 condition2가 참일 때 실행할 코드
} else {
  // 모든 조건이 거짓일 때 실행할 코드
}
let x = 7;

if (x > 10) {
  console.log("x는 10보다 큽니다."); // 조건식이 참일 때 실행됩니다.
} else if (x > 5) {
  console.log("x는 5보다 크고 10보다 작거나 같습니다."); // 첫 번째 조건식이 거짓이지만 두 번째 조건식이 참일 때 실행됩니다.
} else {
  console.log("x는 5보다 작거나 같습니다."); // 모든 조건식이 거짓일 때 실행됩니다.
}
// 출력:x는 5보다 크고 10보다 작거나 같습니다.

switch 문

  • switch문은 조건에 따라 다른 동작을 수행하는 제어문입니다. 이는 특정 변수나 표현식의 값을 평가한 후, 그 값에 따라 여러 case 중 하나를 선택해 해당 코드 블록을 실행합니다. 즉, 여러 조건 중에서 하나를 만족할 경우에 그에 해당하는 코드 블록을 실행합니다.
  • switch 문은 일반적으로 여러 개의 if-else if-else 문을 대체하여 가독성을 높이고 코드를 간결하게 만드는 데 사용됩니다. 특히, expression의 값이 여러 가지 고정된 값 중 하나일 때 효과적으로 사용됩니다.
  • switch 문의 구조
    - expression : 평가할 변수나 표현식입니다.
    - case : expression의 값과 일치하는 경우 실행될 코드 블록입니다. 여러 개의 case를 사용하여 여러 조건을 처리할 수 있습니다.
    - default : expression의 값이 어떤 case와도 일치하지 않을 때 실행되는 코드 블록입니다. 이는 선택적으로 사용할 수 있습니다.
    - break : case 블록의 끝에 break 문을 사용하여 다음 case 블록으로 넘어가지 않도록 합니다.
switch (expression) {
  case value1:
    // expression이 value1과 일치할 때 실행될 코드
    break;
  case value2:
    // expression이 value2와 일치할 때 실행될 코드
    break;
  // 추가적인 case들
  default:
  // 위의 어떤 case와도 일치하지 않을 때 실행될 코드 (옵션)
}
let day = 3;
let dayName;

switch (day) {
  case 1:
    dayName = "Monday";
    break;
  case 2:
    dayName = "Tuesday";
    break;
  case 3:
    dayName = "Wednesday";
    break;
  case 4:
    dayName = "Thursday";
    break;
  case 5:
    dayName = "Friday";
    break;
  default:
    dayName = "Unknown";
}

console.log("Today is " + dayName); // Today is Wednesday
profile
내가 바뀌지 않으면 아무것도 바뀌지 않는다 🔥🔥🔥

0개의 댓글