JavaScript에서 지수 연산자는 ** 기호를 사용하여 표현됩니다.
이 연산자는 ES7(ECMAScript 2016)부터 도입되었으며, 거듭제곱 연산을 수행하는 데 사용됩니다.
지수 연산자
아래는 JavaScript에서의 지수 연산자 사용 예시입니다
let result = 2 ** 3;
console.log(result); // 출력: 8
위 예시에서 2 ** 3은 2를 3번 곱한 결과인 8을 반환합니다.
음수 일 때
음수는 () 괄호로 묶어줘야 합니다.
let result = (-2) ** 3;
console.log(result); // 출력: -8
위 예시에서 (-2) ** 3은 -2를 3번 곱한 결과인 -8을 반환합니다. JavaScript의 지수 연산자는 음수에 대해서도 정상적으로 동작합니다.
산술 연산자와 함께 사용할 때
지수 연산자는 산술 연산자와 함께 사용하여 다양한 수식을 계산할 수 있습니다.
let a = 2;
let b = 3;
let c = 4;
// 지수 연산자와 곱셈 연산자를 함께 사용
let result1 = a ** b * c;
console.log(result1); // 출력: 32
// 덧셈 연산자와 지수 연산자를 함께 사용
let result2 = (a + b) ** c;
console.log(result2); // 출력: 125
// 나눗셈 연산자와 지수 연산자를 함께 사용
let result3 = c / (a ** b);
console.log(result3); // 출력: 1
// 지수 연산자를 여러 번 사용
let result4 = a ** b ** c;
console.log(result4); // 출력: 2417851639229258349412352
위 예시에서는 지수 연산자(**)를 곱셈, 덧셈, 나눗셈 연산자와 함께 사용하여 다양한 계산을 수행합니다.
각 예시는 간단한 수식을 보여주며, 연산자의 우선순위를 따릅니다.
필요에 따라 괄호를 사용하여 연산자 우선순위를 변경할 수도 있습니다. 마지막 예시(result4)에서는 지수 연산자를 여러 번 연속해서 사용하는 경우를 보여줍니다. 이는 오른쪽에서 왼쪽으로 연산이 수행되며, 각각의 거듭제곱이 계산됩니다. 위 예시에서는 2의 4 제곱을 계산한 후, 그 결과의 3 제곱을 계산한 값을 반환합니다.
기존 방식 Math.pow
기존에는 JavaScript에서는 Math 객체의 Math.pow() 메서드를 사용하여 지수 연산을 수행했습니다.
Math.pow() 메서드는 첫 번째 인수를 밑으로 하고, 두 번째 인수를 지수로 하는 거듭제곱을 계산합니다.
아래는 Math.pow() 메서드를 사용한 예시입니다
let result = Math.pow(2, 3);
console.log(result); // 출력: 8
음수 일 때
let result = Math.pow(-2, 3);
console.log(result); // 출력: -8
산술 연산자와 함께 사용할 때
let a = 2;
let b = 3;
let c = 4;
// Math.pow() 메서드를 사용한 거듭제곱 계산
let result1 = Math.pow(a, b) * c;
console.log(result1); // 출력: 32
let result2 = Math.pow((a + b), c);
console.log(result2); // 출력: 125
let result3 = c / Math.pow(a, b);
console.log(result3); // 출력: 1
let result4 = Math.pow(a, Math.pow(b, c));
console.log(result4); // 출력: 2417851639229258349412352
위 예시에서는 Math.pow() 메서드를 사용하여 거듭제곱을 계산하고, 그 결과를 다른 산술 연산에 활용합니다.
기존 방식에서는 Math.pow() 메서드를 호출하여 밑과 지수를 전달하여 계산합니다. 이를 통해 원하는 수식을 구현할 수 있습니다.
지수 연산자와 Math.pow 두 예시 모두 동일한 결과를 반환합니다.
하지만 ES7부터 도입된 지수 연산자(**)를 사용하면 더 직관적이고 간결한 코드를 작성할 수 있습니다.