グループ化演算子 ( )

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

グループ化演算子 ( ) は、式での評価の優先順位を制御します。

試してみましょう

console.log(1 + 2 * 3); // 1 + 6
// Expected output: 7

console.log(1 + 2 * 3); // 1 + 6
// Expected output: 7

console.log((1 + 2) * 3); // 3 * 3
// Expected output: 9

console.log(1 * 3 + 2 * 3); // 3 + 6
// Expected output: 9

構文

js
( )

解説

グループ化演算子は、式または部分式の周りに括弧のペアで構成され、通常の演算子の優先順位を上書きし、より低い優先順位の式をより高い優先順位の式の前に評価できるようにします。その名の通り、括弧の中にあるものをグループ化します。

グループ化演算子の使用

最初に乗算と除算をし、次に加算と引き算をする優先順位を、最初に加算を評価するように上書きします。

js
var a = 1;
var b = 2;
var c = 3;

// default precedence
a + b * c; // 7
// evaluated by default like this
a + (b * c); // 7

// now overriding precedence
// addition before multiplication
(a + b) * c; // 9

// which is equivalent to
a * c + b * c; // 9

これらの例では、評価の左から右への順序が維持されていることに注意してください。つまり、演算子の評価順序は変わっていますが、オペランドの評価順序は変わっていません。 例えば次のコードを見てください。

js
a() * (b() + c());

関数 a は関数 b よりも前に、また関数 b は関数 c よりも前に呼び出されます。

仕様書

Specification
ECMAScript® 2025 Language Specification
# sec-grouping-operator

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
Grouping operator ()

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報