Grouping operator ( )
The grouping operator ( )
controls the precedence of evaluation in
expressions.
Syntax
( )
Description
The grouping operator consists of a pair of parentheses around an expression or sub-expression to override the normal operator precedence so that operators with lower precedence can be evaluated before an operator with higher precedence. As it sounds, it groups what's inside of the parentheses.
Examples
Using the grouping operator
Overriding multiplication and division first, then addition and subtraction to evaluate addition first.
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
Notice in these examples that the left-to-right order of evaluation is still preserved. In other words, the order in which the operators evaluate has changed, but the order in which the operands evaluate has not. For example in this code:
a() * (b() + c())
The function a
will be called before the function b
, which will be called before the function c
.
Specifications
Specification |
---|
ECMAScript Language Specification # sec-grouping-operator |
Browser compatibility
BCD tables only load in the browser