Exponenciação (Potenciação)
O operador de exponenciação (**) eleva o operando da esquerda (base) à
potência do operando da direita (expoente). Esta operação multiplica a base
por ela mesma o número de vezes indicado pelo expoente.
Sintaxe
base ** expoente
Parâmetros
baseO número da base (operando esquerdo).
expoenteO expoente usado para elevar a base (operando direito).
Valor de Retorno
A base elevada à potência do expoente (baseexpoente).
Descrição
O operador ** realiza a exponenciação, que é equivalente a usar Math.pow(base, expoente),
porém com sintaxe mais concisa e moderna.
A exponenciação é uma operação que:
Com expoentes inteiros positivos: multiplica a base por ela mesma repetidamente
Com expoentes fracionários: calcula raízes (exemplo:
x ** 0.5é a raiz quadrada)Com expoentes negativos: calcula o inverso da potência positiva (exemplo:
x ** -2=1 / x²)Com expoente zero: sempre retorna 1 (para qualquer base, exceto alguns casos especiais)
Exemplos
Potências Simples
Multiplicação repetida da base por ela mesma.
// Quadrados
2 ** 2; // 4 (2 × 2)
5 ** 2; // 25 (5 × 5)
10 ** 2; // 100 (10 × 10)
// Cubos
2 ** 3; // 8 (2 × 2 × 2)
3 ** 3; // 27 (3 × 3 × 3)
5 ** 3; // 125 (5 × 5 × 5)
// Potências maiores
7 ** 2; // 49
7 ** 3; // 343
Expoentes Fracionários (Raízes)
Expoentes fracionários calculam raízes da base.
// Raiz quadrada (expoente 0.5 ou 1/2)
4 ** 0.5; // 2 (√4 = 2, pois 2² = 4)
9 ** 0.5; // 3 (√9 = 3)
16 ** (1/2); // 4 (√16 = 4)
// Raiz cúbica (expoente 1/3)
8 ** (1/3); // 2 (∛8 = 2, pois 2³ = 8)
27 ** (1/3); // 3 (∛27 = 3, pois 3³ = 27)
64 ** (1/3); // 4 (∛64 = 4)
// Raiz quarta (expoente 1/4)
16 ** (1/4); // 2 (⁴√16 = 2, pois 2⁴ = 16)
81 ** (1/4); // 3 (⁴√81 = 3)
// Outras raízes
32 ** (1/5); // 2 (⁵√32 = 2, pois 2⁵ = 32)
Expoentes Negativos (Inversos)
Expoentes negativos calculam o inverso da potência positiva.
// Expoente -1 (inverso/recíproco)
2 ** -1; // 0.5 (2⁻¹ = 1/2 = 0.5)
4 ** -1; // 0.25 (4⁻¹ = 1/4 = 0.25)
10 ** -1; // 0.1 (10⁻¹ = 1/10 = 0.1)
// Expoentes negativos maiores
2 ** -2; // 0.25 (2⁻² = 1/4 = 0.25)
10 ** -2; // 0.01 (10⁻² = 1/100 = 0.01)
10 ** -3; // 0.001 (10⁻³ = 1/1000 = 0.001)
5 ** -2; // 0.04 (5⁻² = 1/25 = 0.04)
Expoente Zero
Qualquer número (exceto 0) elevado a 0 resulta em 1.
2 ** 0; // 1
10 ** 0; // 1
100 ** 0; // 1
-5 ** 0; // 1
0.5 ** 0; // 1
Aplicações Práticas
Conversões de Unidades
Potências de 10 e outras bases.
// Conversão de bytes
kilobyte = 2 ** 10; // 1024 bytes (1 KB)
megabyte = 2 ** 20; // 1048576 bytes (1 MB)
gigabyte = 2 ** 30; // 1073741824 bytes (1 GB)
// Potências de 10
10 ** 3; // 1000 (mil)
10 ** 6; // 1000000 (milhão)
10 ** 9; // 1000000000 (bilhão)
// Conversão científica
velocidadeLuz = 3 * 10 ** 8; // 300.000.000 m/s
Cálculos Geométricos
Áreas, volumes e dimensões.
// Área de um quadrado (lado²)
lado = 5;
area = lado ** 2; // 25 m²
// Volume de um cubo (aresta³)
aresta = 3;
volume = aresta ** 3; // 27 m³
// Teorema de Pitágoras: c = √(a² + b²)
cateto1 = 3;
cateto2 = 4;
hipotenusa = (cateto1 ** 2 + cateto2 ** 2) ** 0.5; // 5
Operações Encadeadas
Múltiplas exponenciações e expressões complexas.
// Exponenciações encadeadas (avaliadas da direita para esquerda)
2 ** 3 ** 2; // 512 (equivalente a 2 ** (3 ** 2) = 2 ** 9)
// Com parênteses para controlar ordem
(2 ** 3) ** 2; // 64 (primeiro 2³ = 8, depois 8² = 64)
// Combinações com outras operações
3 + 2 ** 3; // 11 (exponenciação tem precedência: 3 + 8)
(3 + 2) ** 3; // 125 (primeiro soma: 5³)
// Expressões mais complexas
resultado = (5 ** 2 + 3 ** 2) ** 0.5; // 5.83 (√(25 + 9) = √34)