aboutsummaryrefslogtreecommitdiff
path: root/files/uk/web/javascript/reference/operators/exponentiation
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:43:23 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:43:23 -0500
commit218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (patch)
treea9ef8ac1e1b8fe4207b6d64d3841bfb8990b6fd0 /files/uk/web/javascript/reference/operators/exponentiation
parent074785cea106179cb3305637055ab0a009ca74f2 (diff)
downloadtranslated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.tar.gz
translated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.tar.bz2
translated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.zip
initial commit
Diffstat (limited to 'files/uk/web/javascript/reference/operators/exponentiation')
-rw-r--r--files/uk/web/javascript/reference/operators/exponentiation/index.html102
1 files changed, 102 insertions, 0 deletions
diff --git a/files/uk/web/javascript/reference/operators/exponentiation/index.html b/files/uk/web/javascript/reference/operators/exponentiation/index.html
new file mode 100644
index 0000000000..e50f793f42
--- /dev/null
+++ b/files/uk/web/javascript/reference/operators/exponentiation/index.html
@@ -0,0 +1,102 @@
+---
+title: Піднесення до степеня (**)
+slug: Web/JavaScript/Reference/Operators/Exponentiation
+tags:
+ - JavaScript
+ - Довідка
+ - Оператор
+translation_of: Web/JavaScript/Reference/Operators/Exponentiation
+---
+<div>{{jsSidebar("Operators")}}</div>
+
+<p>Оператор піднесення до степеня (<code>**</code>) повертає результат піднесення першого операнду до показника степеня другого операнду.</p>
+
+<div>{{EmbedInteractiveExample("pages/js/expressions-exponentiation.html")}}</div>
+
+
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox notranslate"><strong>Оператор:</strong> <var>var1</var> ** <var>var2</var>
+</pre>
+
+<h2 id="Опис">Опис</h2>
+
+<p>Оператор піднесення до степеня правоасоціативний. <code><var>a</var> ** <var>b</var> ** <var>c</var></code> дорівнює <code><var>a</var> ** (<var>b</var> ** <var>c</var>)</code>.</p>
+
+<p>У більшості мов, таких як PHP, Python та інших, які мають оператор піднесення до степеня (<code>**</code>), оператор піднесення до степеня має вищий пріоритет, ніж унарні оператори, такі як унарний <code>+</code> та унарний <code>-</code>, але існує кілька винятків. Наприклад, у Bash оператор <code>**</code> має нижчий пріоритет, ніж унарні оператори.</p>
+
+<p>У JavaScript неможливо написати неоднозначний вираз піднесення до степеня, тобто, ви не можете поставити унарний оператор (<code>+/-/~/!/delete/void/typeof</code>) одразу перед числом основи степеня.</p>
+
+<pre class="brush: js notranslate">-2 ** 2;
+// 4 у Bash, -4 у інших мовах.
+// Це помилка JavaScript, оскільки операція неоднозначна.
+
+
+-(2 ** 2);
+// -4 у JavaScript, а наміри автора однозначні.
+</pre>
+
+<p>Зауважте, що деякі мови програмування використовують символ карет <kbd>^</kbd> для піднесення до степеня, але JavaScript використовує цей символ як <a href="/uk/docs/Web/JavaScript/Reference/Operators/Bitwise_XOR">оператор виключного побітового АБО (XOR)</a>.</p>
+
+<h2 id="Приклади">Приклади</h2>
+
+<h3 id="Базове_піднесення_до_степеня">Базове піднесення до степеня</h3>
+
+<pre class="brush: js notranslate">2 ** 3 // 8
+3 ** 2 // 9
+3 ** 2.5 // 15.588457268119896
+10 ** -1 // 0.1
+NaN ** 2 // NaN
+</pre>
+
+<h3 id="Асоціативність">Асоціативність</h3>
+
+<pre class="brush: js notranslate">2 ** 3 ** 2 // 512
+2 ** (3 ** 2) // 512
+(2 ** 3) ** 2 // 64</pre>
+
+<h3 id="Використання_з_унарними_операторами">Використання з унарними операторами</h3>
+
+<p>Щоб змінити знак результату виразу піднесення до степеня на протилежний:</p>
+
+<pre class="brush: js notranslate">-(2 ** 2) // -4
+</pre>
+
+<p>Щоб зробити основу степеня у виразі від'ємним числом:</p>
+
+<pre class="brush: js notranslate">(-2) ** 2 // 4
+</pre>
+
+<h2 id="Специфікації">Специфікації</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Специфікація</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('ESDraft', '#sec-exp-operator', 'Exponentiation operator')}}</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Сумісність_з_веб-переглядачами">Сумісність з веб-переглядачами</h2>
+
+
+
+<p>{{Compat("javascript.operators.exponentiation")}}</p>
+
+<h2 id="Див._також">Див. також</h2>
+
+<ul>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Addition">Оператор додавання</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Subtraction">Оператор віднімання</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Division">Оператор ділення</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Multiplication">Оператор множення</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Remainder">Оператор остачі</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Increment">Оператор інкременту</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Decrement">Оператор декременту</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Unary_negation">Унарний мінус</a></li>
+ <li><a href="/uk/docs/Web/JavaScript/Reference/Operators/Unary_plus">Унарний плюс</a></li>
+</ul>