자바스크립트에서의 NaN과 숫자 간의 암시적 형 변환 처리 방법

NaN은 “Not a Number”의 약자로, 숫자가 아닌 값을 나타내는 특별한 값입니다. 자바스크립트에서 숫자와 NaN 사이에는 암시적 형 변환이 발생할 수 있습니다. 이번 글에서는 NaN과 숫자 간의 암시적 형 변환 처리 방법에 대해 알아보겠습니다.

1. 숫자와 NaN의 비교

자바스크립트에서 숫자와 NaN을 비교할 때, “==” 연산자를 사용하면 암시적 형 변환이 발생합니다. 이때, NaN과 어떤 값이 비교되더라도 결과는 항상 false입니다.

console.log(NaN == 1); // false
console.log(NaN == NaN); // false

하지만, “===” 연산자를 사용하면 암시적 형 변환 없이 정확한 비교를 할 수 있습니다.

console.log(NaN === 1); // false
console.log(NaN === NaN); // false

2. NaN과 숫자의 연산

NaN과 숫자 사이의 연산은 NaN을 반환합니다. 다음은 몇 가지 예제입니다.

console.log(NaN + 1); // NaN
console.log(NaN - 1); // NaN
console.log(NaN * 2); // NaN
console.log(NaN / 3); // NaN

3. NaN 검사 방법

NaN인지 확인하기 위해 자바스크립트에서 제공하는 isNaN() 함수를 사용할 수 있습니다.

console.log(isNaN(NaN)); // true
console.log(isNaN(42)); // false
console.log(isNaN("42")); // false
console.log(isNaN("hello")); // true

결론

자바스크립트에서 NaN과 숫자 간의 암시적 형 변환은 주의해야 합니다. NaN과 숫자를 비교하거나 연산할 때 “===” 연산자를 사용하거나, isNaN() 함수를 활용하여 정확한 결과를 얻을 수 있습니다.

#javascript #NaN

참고자료: