[typescript] 숫자 범위 유효성 검사 방법

숫자 범위 확인을 위한 if 문

가장 간단한 방법은 일반적인 if 문을 사용하여 숫자의 범위를 확인하는 것입니다. 아래는 0에서 10 사이의 숫자인지를 확인하는 예제 코드입니다.

function isValidNumber(num: number): boolean {
  if (num >= 0 && num <= 10) {
    return true;
  } else {
    return false;
  }
}

console.log(isValidNumber(5)); // true
console.log(isValidNumber(15)); // false

이 방법은 단순하고 직관적이지만, 코드가 복잡해질수록 유지보수가 어려워질 수 있습니다.

타입 가드(Type Guard)를 활용한 숫자 범위 확인

TypeScript에서 제공하는 타입 가드(type guard)를 사용하여 숫자의 범위를 확인할 수도 있습니다. 이를 통해 코드의 가독성을 높이고 유지보수를 쉽게 할 수 있습니다.

아래는 타입 가드를 사용하여 0에서 10 사이의 숫자인지를 확인하는 예제 코드입니다.

function isInRange(num: number): num is Range0to10 {
  return num >= 0 && num <= 10;
}

type Range0to10 = number;

function processNumber(num: number): void {
  if (isInRange(num)) {
    console.log(`${num} is in the range of 0 to 10`);
  } else {
    console.log(`${num} is outside the range of 0 to 10`);
  }
}

processNumber(5); // 5 is in the range of 0 to 10
processNumber(15); // 15 is outside the range of 0 to 10

위 코드에서는 isInRange 함수가 타입 가드 역할을 수행하고, 해당 타입을 Range0to10으로 선언하여 특정 범위의 숫자임을 명시했습니다.

숫자 범위 유효성 검사를 위한 두 가지 방법을 살펴보았는데, 타입 가드를 사용하는 방법이 코드의 유지보수성을 높이고 가독성을 향상시킬 수 있는 장점이 있습니다. 이러한 방법들을 활용하여 숫자의 범위를 효과적으로 검사할 수 있습니다.

관련 참고 링크: