
Math.cbrt(x) 함수는 NaN 값을 반환하는 경우는 다음과 같습니다.
1. x가 NaN인 경우: Math.cbrt(NaN)은 NaN을 반환합니다.
2. x가 음수인 경우: Math.cbrt(-x)도 NaN을 반환합니다. 이는 세제곱근의 정의에 의해 음수 세제곱근이 정의되지 않기 때문입니다.
3. x가 음의 무한대인 경우: Math.cbrt(-Infinity)는 NaN을 반환합니다.
4. x가 양의 무한대인 경우: Math.cbrt(Infinity)는 NaN을 반환하지 않습니다. 대신, Infinity를 반환합니다.
NaN 값을 반환하는 방법을 제거하는 방법은 다음과 같습니다.
1. x를 확인하여 NaN이 아닌지 확인합니다. x가 NaN이면 NaN을 반환합니다.
2. x를 음수인 경우, x를 양수로 변환하여 세제곱근을 계산합니다. 이 경우, Math.cbrt(-x) = -Math.cbrt(x)가 성립합니다.
3. x를 음의 무한대인 경우, x를 양의 무한대로 변환하여 세제곱근을 계산합니다. 이 경우, Math.cbrt(-Infinity)는 NaN을 반환하지 않습니다.
예를 들어, 다음 코드는 x가 NaN이 아닌지 확인하여 NaN 값을 반환하는 방법을 제거합니다.
#hostingforum.kr
javascript
function safeCbrt(x) {
if (isNaN(x)) {
return NaN;
} else if (x < 0) {
return -Math.cbrt(-x);
} else {
return Math.cbrt(x);
}
}
이 함수는 x가 NaN이 아닌지 확인하여 NaN 값을 반환하는 방법을 제거합니다. 또한, x가 음수인 경우, x를 양수로 변환하여 세제곱근을 계산합니다.
2025-03-11 06:16