자바스크립트에서는 숫자인지 아닌지 여부를 확인하는데에 isNaN() 함수를 사용할 수 있습니다. isNaN() 함수는 “is Not a Number”의 약자로, 주어진 값이 숫자인지 아닌지를 확인하여 true 또는 false를 반환합니다.
isNaN() 함수 사용법
isNaN(value);
위의 형식으로 isNaN() 함수를 사용할 수 있습니다. value에는 숫자인지 확인하고자 하는 값이 들어가게 됩니다.
isNaN() 함수의 반환값
isNaN() 함수의 반환값은 다음과 같습니다:
true: 입력된 값이 숫자가 아님을 나타냄false: 입력된 값이 숫자임을 나타냄
예제
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를 반환합니다.
또한, true나 null은 숫자로 변환 시 각각 1과 0으로 처리되기 때문에 false를 반환합니다. 그리고 undefined는 숫자로 변환할 수 없기 때문에 true를 반환합니다.
주의사항
isNaN() 함수를 사용할 때 주의해야할 점은, 숫자로 변환할 수 있는 값들에 대해서도 잘 처리해야 한다는 것입니다. 예를 들어, '3.14' 같은 숫자형 문자열은 숫자로 변환할 수 있지만, '3.14abc' 같은 경우는 숫자로 변환할 수 없기 때문에 true를 반환합니다.
따라서, isNaN() 함수를 사용할 때 우선적으로 값을 숫자로 변환하고 결과를 확인하는 것이 좋습니다. 예를 들어, isNaN(Number(value))와 같은 방법을 사용하여 숫자 여부를 확인할 수 있습니다.
결론
isNaN() 함수는 자바스크립트에서 간단하게 값을 숫자인지 아닌지 확인할 때 유용한 함수입니다. 주어진 값이 숫자로 변환 가능한지 아닌지를 판단하여 true 나 false로 반환하므로, 이를 활용하여 조건문이나 검증 로직에 활용할 수 있습니다.