Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

べき乗 (**)

BaselineWidely available

べき乗演算子 (**) は、1 つ目のオペランドを2 つ目オペランドの累乗にした結果を返します。これはMath.pow と同等ですが、オペランドとして BigInt も受け入れます。

試してみましょう

console.log(3 ** 4);// Expected output: 81console.log(10 ** -2);// Expected output: 0.01console.log(2 ** (3 ** 2));// Expected output: 512console.log((2 ** 3) ** 2);// Expected output: 64

構文

js
x ** y;

解説

べき乗演算子は右結合です。a ** b ** ca ** (b ** c) と等しくなります。

PHP や Python など、べき乗演算子 (**) を持つほとんどの言語では、べき乗演算子は単項演算子 (単項+ や単項- など) よりも優先順位が高いと定義されていますが、いくつかの例外があります。例えば、Bash では** 演算子は単項演算子よりも優先順位が低いと定義されています。

JavaScript では、あいまいなべき乗式を記述することはできません。 つまり、基数の直前に単項演算子 (+/-/~/!/delete/void/typeof) を置くことはできません。 これを行うと、SyntaxError が発生します。

js
-2 ** 2;// Bashでは 4 他の言語では -4// JavaScript では演算があいまいなため無効-(2 ** 2);// JavaScript では意図が明白なため -4

注意: 一部のプログラミング言語ではべき乗計算にキャレット記号^ を使用していますが、JavaScript ではビット排他的論理和にこの記号を使用しています。

基本的なべき乗

js
2 ** 3; // 83 ** 2; // 93 ** 2.5; // 15.58845726811989610 ** -1; // 0.1NaN ** 2; // NaN

結合性

js
2 ** 3 ** 2; // 5122 ** (3 ** 2); // 512(2 ** 3) ** 2; // 64

単項演算子との使用

べき乗式の結果の符号を反転させる例です。

js
-(2 ** 2); // -4

べき乗式の基底を強制的に負の数にする例です。

js
(-2) ** 2; // 4

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-exp-operator

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp