DEV Community

Cover image for Understanding Operator Associativity in JavaScript
Magesh
Magesh

Posted on

1 1 1

Understanding Operator Associativity in JavaScript

In JavaScript, operator associativity determines the order in which operators of the same precedence level are evaluated in an expression. Operators can be either left-associative (evaluated from left to right) or right-associative (evaluated from right to left).

Left-Associative Operators

Most operators, like +, -, *, and /, are left-associative. This means that when there are multiple of these in one expression, the computer calculates from left to right.

For example:

10 - 3 - 2
Enter fullscreen mode Exit fullscreen mode

This is done as (10 - 3) - 2, giving 5. The left part is calculated first.

Right-Associative Operators

Some operators, like the exponentiation operator (**), are right-associative. This means that when you see multiple ** in one line, it calculates from right to left.

For example:

2 ** 3 ** 2
Enter fullscreen mode Exit fullscreen mode

This is calculated as 2 ** (3 ** 2), giving 512. The right part is calculated first.

Why Associativity Matters

  • Associativity impacts complex expressions with multiple operators of the same precedence, so understanding it helps avoid unexpected results.
  • Associativity does not affect operators with different precedence; those are evaluated based on precedence rules.

Summary Table

Operator Associativity Example
+, -, *, / Left 10 - 3 - 2
** Right 2 ** 3 ** 2
=, +=, -= Right a = b = c

Understanding associativity and precedence is crucial when writing clear and predictable JavaScript expressions.

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more