자바스크립트 제곱 Math.pow() 계산 및 반올림 조절


자바스크립트 제곱 표현 방법은 Math.pow() 메서드를 사용합니다. 음수의 소수 지수는 허수로 NaN을 반환합니다. 계산 가능 범위를 넘어서면 Infinity를 반환합니다.

JavaScript 제곱 계산하는 방법

23 = 8 과 같은 거듭 제곱을 나타낼 때 자바스크립트에서는 Math.pow(2, 3)와 같은 객체및 메서드를 사용합니다. 앞 자리 숫자는 밑, 뒷 자리 숫자는 지수를 의미합니다.


//양의 정수 거듭 제곱
var num1 = Math.pow(2, 3);

//소수의 거듭 제곱
var num2 = Math.pow(2, 1/2);
var num3 = Math.pow(2, 0.5);

//음수 지수의 거듭 제곱
var num4 = Math.pow(2, -3);

//음수 소수의 거듭 제곱
var num5 = Math.pow(2, -1/2);
var num6 = Math.pow(2, -0.5);

//밑이 음수인 거듭 제곱
var num7 = Math.pow(-2, 2);
var num8 = Math.pow(-2, 3);

결과

23 = 8
21/2 = 1.4142135623730951
20.5 = 1.4142135623730951
2-3 = 0.125
2-1/2 = 0.7071067811865476
2-0.5 = 0.7071067811865476
(-2)2 = 4
(-2)3 = -8

거듭 제곱 반올림 계산

반올림을 하고 싶은 경우 toFixed() 메서드를 사용하면 됩니다. 괄호에 적힌 값만큼 소수 자릿수가 지정되며 그 이하에서 반올림됩니다.


var num = Math.pow(2, 0.5);
var result = num.toFixed(2);

결과

1.41

20.5는 √2와 동일하므로 1.4142…와 같은 무한소수입니다. toFixed(2)로 작성하면 소수 셋째 자리에서 반올림 계산되어 소수 둘째 자리인 1.41까지만 표기가 됩니다.

자바스크립트 거듭 제곱 NaN 표시 이유

(-2)0.5와 같은 계산은 정답이 허수입니다. 제곱해서 음수가 되는 수는 실수에는 없기 때문입니다. 허수나 복소수는 자바스크립트에서는 표현되지 않습니다. 따라서 NaN이라고 표기됩니다.


//밑이 음수이고, 지수가 소수인 거듭제곱
var num1 = Math.pow(-2, 0.5);
var num2 = Math.pow(-2, 1/2);

결과

(-2)0.5 = NaN
(-2)1/2 = NaN

정리하면 Math.pow(A, B)에서 A가 음수일 경우 B는 소수가 될 수 없으며 양수 또는 음수만 가능하다는 것을 알 수 있습니다.


자바스크립트 거듭 제곱 Infinity 표시 이유

반대로 거듭제곱의 결과가 자바스크립트의 최대 숫자 범위를 벗어난 경우에는 무한대를 의미하는 Infinity를 반환합니다.

var num = Math.pow(999, 999);

결과

Infinity

999999의 거듭 제곱 연산 결과는 자바스크립트의 최대 계산 범위를 벗어나므로 무한대를 의미하는 Infinity가 반환됩니다.