isNaN() 함수란?
JavaScript에서 isNaN() 함수는 전달된 값이 NaN(Not-a-Number), 즉 유효하지 않은 숫자인지를 판별하는 데 사용됩니다. 숫자 연산 과정에 문자열 같은 잘못된 입력값이 포함되면 결과가 NaN이 되는데, 이때 isNaN()으로 오류 여부를 손쉽게 확인할 수 있습니다.
아래 예제는 콜백 함수와 함께 isNaN()을 활용해 곱셈 결과의 유효성을 검사하는 방법을 보여줍니다.
예제 코드
function multiplication(firstValue, secondValue, callback) {
var res = firstValue * secondValue;
var err = isNaN(res) ? 'Something is wrong in input parameter' :
undefined;
callback(res, err);
}
multiplication(10, 50, function (result, error) {
console.log("The multiplication result="+result);
if (error) {
console.log(error);
}
});
multiplication('Sam', 5, function (result, error) {
console.log("The multiplication result="+result);
if (error) {
console.log(error);
}
});프로그램 실행 방법
위 프로그램을 실행하려면 터미널에서 다음 명령어를 입력합니다.
node fileName.js
여기서는 파일 이름이 demo201.js라고 가정합니다.
실행 결과
프로그램을 실행하면 아래와 같은 출력이 나타납니다.
PS C:\Users\Amit\javascript-code> node demo201.js
The multiplication result=500
The multiplication result=NaN
Something is wrong in input parameter
코드 설명
multiplication() 함수는 두 개의 값을 곱한 뒤, 그 결과를 isNaN()으로 검사합니다.
- 첫 번째 호출: 10 × 50 = 500으로 정상적인 숫자이므로 결과값만 출력됩니다.
- 두 번째 호출: 문자열 'Sam'과 5를 곱하면 연산이 불가능하여 결과가 NaN이 됩니다. 이때
isNaN()이 true를 반환하고, 오류 메시지 "Something is wrong in input parameter"가 함께 출력됩니다.
이처럼 isNaN()을 활용하면 숫자 연산 결과가 유효한지 검증하고, 잘못된 입력값에 대해 적절한 오류 처리를 수행할 수 있습니다.