Skip to main content
Option: transforms.expandLogicalAssignment

What it changes

Expands logical compound assignments into equivalent short-circuiting assignments while preserving single evaluation of member receivers and computed keys.

Before and after

Configuration

Run this transform by setting transforms.expandLogicalAssignment to true:
obfuscate.mjs

View the implementation

Open the TypeScript implementation on GitHub.

Read the behavior tests

Review behavior checks and cases this transform leaves alone.
Last modified on August 26, 2026