[javascript] Infinity와 NaN의 변환 방식

자바스크립트에서 Infinity 및 NaN은 숫자의 형태가 아닌 값이며, 코드에서 부동 소수점 연산의 결과로 발생합니다. Infinity는 어떠한 수보다 큰 값으로, 양의 무한대를 나타냅니다. NaN은 “Not a Number”의 약자로, 숫자가 아닌 값이라는 것을 나타냅니다.

Infinity

Infinity는 어떠한 수보다 큰 값을 나타냅니다. 다음은 Infinity를 생성하는 코드의 예시입니다.

const infiniteValue = 1 / 0;
console.log(infiniteValue); // Infinity

위 코드에서, 0으로 나누는 연산은 수학적으로 불가능하며, 결과로는 Infinity가 반환됩니다.

NaN

NaN은 “Not a Number”을 의미하며, 숫자가 아닌 값을 나타냅니다. 다음은 NaN을 생성하는 코드의 예시입니다.

const notANumber = 0 / 0;
console.log(notANumber); // NaN

위 코드에서, 0을 0으로 나누는 연산은 정의되지 않으며, 결과로는 NaN이 반환됩니다.

변환 방식

자바스크립트에서는 Infinity와 NaN을 서로 변환할 수 있습니다. 예를 들어, Infinity를 NaN으로 변환하거나, NaN을 Infinity로 변환할 수 있습니다.

Infinity를 NaN으로 변환

const infinityValue = Infinity;
const convertedNaN = Number(infinityValue);
console.log(convertedNaN); // NaN

NaN을 Infinity로 변환

const nanValue = NaN;
const convertedInfinity = Number(nanValue);
console.log(convertedInfinity); // Infinity

위 예시에서, Number() 함수를 사용하여 Infinity와 NaN을 서로 변환하였습니다.

이렇게 자바스크립트에서는 Infinity와 NaN을 서로 변환할 수 있으며, 적절한 상황에 사용될 수 있습니다.

결론

Infinity와 NaN은 자바스크립트에서 숫자가 아닌 값으로써 다양한 수학적 연산에서 사용됩니다. 또한, 자바스크립트에서는 이들을 서로 변환할 수 있어, 유연한 프로그래밍이 가능합니다.

참조: MDN web docs - Infinity, MDN web docs - NaN


위의 글을 작성하였습니다. 추가 질문이 있으시면 언제든지 물어보세요!