1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
---
title: Math.pow()
slug: Web/JavaScript/Reference/Global_Objects/Math/pow
tags:
- Função
- JavaScript
- Método(2)
- Referência(2)
- expoente
- potência
translation_of: Web/JavaScript/Reference/Global_Objects/Math/pow
---
<div>{{JSRef}}</div>
<p>A função <strong><code>Math.pow()</code></strong> retorna a <em>base </em>elevada ao expoente <em>power</em>, ou seja, <code>base<sup>expoente</sup></code>.</p>
<h2 id="Sintaxe">Sintaxe</h2>
<pre class="syntaxbox"><code>Math.pow(<var>base</var>, <var>expoente</var>)</code></pre>
<h3 id="Parâmetros">Parâmetros</h3>
<dl>
<dt><code>base</code></dt>
<dd>O número da base.</dd>
<dt><code>expoente</code></dt>
<dd>O expoente usado para elevar a <code>base</code>.</dd>
</dl>
<h2 id="Descrição">Descrição</h2>
<p>Como <code>pow()</code> é um método estático de <code>Math</code>, você sempre irá usá-lo como <code>Math.pow()</code>, ao invés de usá-lo como um método de um objeto do tipo <code>Math</code> que você tenha criado (<code>Math</code> não é um construtor).</p>
<h2 id="Exemplos">Exemplos</h2>
<h3 id="Usando_Math.pow()">Usando <code>Math.pow()</code></h3>
<pre class="brush: js">// simples
Math.pow(7, 2); // 49
Math.pow(7, 3); // 343
Math.pow(2, 10); // 1024
// expoentes fracionários
Math.pow(4, 0.5); // 2 (raiz quadrada de 4)
Math.pow(8, 1/3); // 2 (raiz cúbica de 8)
Math.pow(2, 0.5); // 1.4142135623730951 (raiz quadrada de 2)
Math.pow(2, 1/3); // 1.2599210498948732 (raiz cúbica de 2)
// expoentes com sinais
Math.pow(7, -2); // 0.02040816326530612 == (1/7)<sup>2 </sup>== (1/49)
Math.pow(8, -1/3); // 0.5 == (1/8)<sup>1/3</sup> == 1/2
// bases com sinal
Math.pow(-7, 2); // 49 (quadrados sempre são positivos)
Math.pow(-7, 3); // -343 (cubos podem ser negativos conforme a base)
Math.pow(-7, 0.5); // NaN (números negativos não tem uma raiz quadrada real)
// devido ao fato que raízes "par" e "ímpar" são próximas,
// e limitam a precisão de ponto flutuante,
// bases negativas com expoentes fracionários sempre retornam NaN
Math.pow(-7, 1/3); // NaN
</pre>
<h2 id="Especificações">Especificações</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Especificação</th>
<th scope="col">Status</th>
<th scope="col">Comentário</th>
</tr>
<tr>
<td>{{SpecName('ES1')}}</td>
<td>{{Spec2('ES1')}}</td>
<td>Definição Inicial. Implementado no JavaScript 1.0.</td>
</tr>
<tr>
<td>{{SpecName('ES5.1', '#sec-15.8.2.13', 'Math.pow')}}</td>
<td>{{Spec2('ES5.1')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('ES6', '#sec-math.pow', 'Math.pow')}}</td>
<td>{{Spec2('ES6')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="Compatibilidade_com_Navegadores">Compatibilidade com Navegadores</h2>
<div>{{CompatibilityTable}}</div>
<div id="compat-desktop">
<table class="compat-table">
<tbody>
<tr>
<th>Funcionalidade</th>
<th>Chrome</th>
<th>Firefox (Gecko)</th>
<th>Internet Explorer</th>
<th>Opera</th>
<th>Safari</th>
</tr>
<tr>
<td>Suporte Básico</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
</tr>
</tbody>
</table>
</div>
<div id="compat-mobile">
<table class="compat-table">
<tbody>
<tr>
<th>Funcionalidade</th>
<th>Android</th>
<th>Chrome for Android</th>
<th>Firefox Mobile (Gecko)</th>
<th>IE Mobile</th>
<th>Opera Mobile</th>
<th>Safari Mobile</th>
</tr>
<tr>
<td>Suporte Básico</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
</tr>
</tbody>
</table>
</div>
<h2 id="Veja_também">Veja também</h2>
<ul>
<li>{{jsxref("Math.cbrt()")}} {{experimental_inline}}</li>
<li>{{jsxref("Math.exp()")}}</li>
<li>{{jsxref("Math.log()")}}</li>
<li>{{jsxref("Math.sqrt()")}}</li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#Exponentiation" title="Arithmetic operators take numerical values (either literals or variables) as their operands and return a single numerical value. The standard arithmetic operators are addition (+), subtraction (-), multiplication (*), and division (/).">Operador Exponencial</a> {{experimental_inline}}</li>
</ul>
|