개발/javascript
연산자09 - 지수 연산자
마루쨩
2023. 9. 19. 23:15
"연산자"
9. 지수 연산자
ES7에서 새롭게 도입된 지수 연산자는 좌항의 피연산자를 밑으로, 우항의 피연산자를 지수로 거듭 제곱하여 숫자 타입의 값을 반환한다.
2 ** 2; // -> 4
2 ** 2.5; // -> 5.565685424949238
2 ** 0; // -> 1
2 ** -2; // -> 0.25
지수 연산자가 도입되기 이전에는 Math.pow메소드를 사용했다.
Math.pow(2, 2); // -> 4
Math.pow(2, 2.5); // -> 5.65685424949238
Math.pow(2, 0); // -> 1
Math.pow(2, -2); // -> 0.25
지수 연산자는 여러 개의 피연산자를 사용할 경우, Math.pow 메소드보다 가독성이 좋다.
2 ** 2 ** 2; // -> 16
Math.pow(Math.pow(2, 2), 2); // -> 16
음수를 거듭제곱의 밑으로 계산하려면 아래와 같이 괄호로 묶어야 한다.
-5 ** 2;
// -> SyntaxError: Unary operator use immediately before exponentiation expressoin. Parenthesis must b used to disam biguate operator precedence
(-5) ** 2; // -> 25
지수 연산자는 다른 산술 연산자와 마찬가지로 할당 연산자와 함께 사용할 수 있다.
var num = 5;
num **= 2; // -> 25
지수 연산자는 모든 이항 연산자보다 우선 순위가 높다.
2 * 5 ** 2; // -> 50