JavaScript 指数演算子

概要: このチュートリアルでは、JavaScriptの指数演算子(**)を使用して、数を指数乗する方法を学びます。

JavaScript 指数演算子の紹介

数を指数乗するには、多くの場合、次の構文を持つ静的メソッドMath.pow()を使用します。

Math.pow(base, exponent)Code language: JavaScript (javascript)

例:

let result = Math.pow(2,2);
console.log(result); // 4

result = Math.pow(2,3);
console.log(result); // 8Code language: JavaScript (javascript)

ECMAScript 2016では、指数演算子(**)を使用して、底を指数乗する別の方法が提供されました。構文は以下のとおりです。

x**n

演算子**は、xを指数n乗します。

一部の言語では、指数表記にキャレット記号^を使用しています。ただし、JavaScriptでは、この記号は既にビットごとの論理XOR演算子として使用されています。

次の例は、指数演算子(**)の使用方法を示しています。

let result = 2 ** 2;
console.log(result); // 4

result = 2 ** 3;
console.log(result); // 8Code language: JavaScript (javascript)

Math.pow()は値を受け取り、計算のために数値型に変換します。同様に、演算子**は数値型を受け入れます。さらに、演算子**bigint型 の値も受け入れます。例:

let result = 2n ** 3n;
console.log(result); // 8nCode language: JavaScript (javascript)

また、中置記法で指数演算子(**)を使用することもできます。例:

let x = 2;
x **= 4;
console.log(x); // 16Code language: JavaScript (javascript)

JavaScriptでは、基数直前に単項演算子を置くことはできません。これを行うと、SyntaxErrorが発生します。

次の例は構文エラーの原因となります。

let result = -2**3;Code language: JavaScript (javascript)

エラー

Uncaught SyntaxError: Unary operator used immediately before exponentiation expression. Parenthesis must be used to disambiguate operator precedenceCode language: JavaScript (javascript)

これを修正するには、次のように括弧を使用します。

let result = (-2)**3;
console.log(result); // -8Code language: JavaScript (javascript)

まとめ

  • 指数演算子**は、数を指数乗します。
  • 指数演算子**は、number型またはbigint型の値を受け入れます。
このチュートリアルは役に立ちましたか?