자바스크립트 isFinite()

자바스크립트는 다양한 내장 함수를 제공하여 개발자가 원하는 동작을 쉽게 구현할 수 있도록 도와줍니다. 그 중 하나인 isFinite() 함수는 숫자의 유효성을 확인하는 데 사용됩니다.

isFinite() 함수란?

isFinite() 함수는 인자로 전달된 값이 유한한 숫자인지 확인합니다. 이 함수는 인수로 전달된 값이 숫자면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

예제

다음은 isFinite() 함수의 간단한 예제 코드입니다.

let number1 = 42;
let number2 = Infinity;
let stringNumber = "123";
let notANumber = NaN;

console.log(isFinite(number1)); // true
console.log(isFinite(number2)); // false
console.log(isFinite(stringNumber)); // true
console.log(isFinite(notANumber)); // false

위 예제에서 number1은 유한한 숫자기 때문에 isFinite() 함수는 true를 반환합니다.

number2는 무한대를 나타내기 위해 사용되는 Infinity 값이기 때문에 isFinite() 함수는 false를 반환합니다.

stringNumber는 문자열 “123”으로 숫자로 해석 가능하므로 isFinite() 함수는 true를 반환합니다.

notANumber는 유효한 숫자가 아니기 때문에(NaN) isFinite() 함수는 false를 반환합니다.

주의사항

isFinite() 함수로 숫자를 확인할 때, 문자열을 숫자로 변환하여 확인합니다. 그러므로, 인자 값이 숫자로 변환될 수 없는 경우(null, 빈 문자열 등)에는 false가 반환됩니다.

확인해야 하는 값이 숫자인지 먼저 확인하지 않고, isFinite() 함수를 호출하면 TypeError가 발생합니다. 이를 방지하기 위해 isNaN() 함수로 값이 숫자인지 확인한 후에 isFinite() 함수를 사용하는 것이 좋습니다.

let value = "someValue";

if (!isNaN(value) && isFinite(value)) {
  // 유효한 숫자이면 실행할 코드
}

결론

isFinite() 함수는 자바스크립트에서 숫자의 유효성을 간단히 확인하기 위한 유용한 내장 함수입니다. 숫자가 유한한지 확인해야 할 때, isFinite() 함수를 사용하여 코드를 간결하고 신뢰성 있게 작성할 수 있습니다.