자바스크립트 isNaN()

자바스크립트에서는 숫자인지 아닌지 여부를 확인하는데에 isNaN() 함수를 사용할 수 있습니다. isNaN() 함수는 “is Not a Number”의 약자로, 주어진 값이 숫자인지 아닌지를 확인하여 true 또는 false를 반환합니다.

isNaN() 함수 사용법

isNaN(value);

위의 형식으로 isNaN() 함수를 사용할 수 있습니다. value에는 숫자인지 확인하고자 하는 값이 들어가게 됩니다.

isNaN() 함수의 반환값

isNaN() 함수의 반환값은 다음과 같습니다:

예제

console.log(isNaN(10));         // false
console.log(isNaN('10'));       // false
console.log(isNaN('hello'));    // true
console.log(isNaN(true));       // false
console.log(isNaN(undefined));  // true
console.log(isNaN(null));       // false

위의 예제에서, isNaN() 함수는 숫자 10은 숫자임을 인식하여 false를 반환하고, 문자열 '10'도 숫자로 변환하여 false를 반환합니다. 그러나 'hello' 같은 문자열은 숫자로 변환할 수 없기 때문에 true를 반환합니다.

또한, truenull은 숫자로 변환 시 각각 10으로 처리되기 때문에 false를 반환합니다. 그리고 undefined는 숫자로 변환할 수 없기 때문에 true를 반환합니다.

주의사항

isNaN() 함수를 사용할 때 주의해야할 점은, 숫자로 변환할 수 있는 값들에 대해서도 잘 처리해야 한다는 것입니다. 예를 들어, '3.14' 같은 숫자형 문자열은 숫자로 변환할 수 있지만, '3.14abc' 같은 경우는 숫자로 변환할 수 없기 때문에 true를 반환합니다.

따라서, isNaN() 함수를 사용할 때 우선적으로 값을 숫자로 변환하고 결과를 확인하는 것이 좋습니다. 예를 들어, isNaN(Number(value))와 같은 방법을 사용하여 숫자 여부를 확인할 수 있습니다.

결론

isNaN() 함수는 자바스크립트에서 간단하게 값을 숫자인지 아닌지 확인할 때 유용한 함수입니다. 주어진 값이 숫자로 변환 가능한지 아닌지를 판단하여 truefalse로 반환하므로, 이를 활용하여 조건문이나 검증 로직에 활용할 수 있습니다.