Division assignment (/=)

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.

The division assignment (/=) operator performs division on the two operands and assigns the result to the left operand.

Try it

let a = 3;

a /= 2;
console.log(a);
// Expected output: 1.5

a /= 0;
console.log(a);
// Expected output: Infinity

a /= "hello";
console.log(a);
// Expected output: NaN

Syntax

js
x /= y

Description

x /= y is equivalent to x = x / y, except that the expression x is only evaluated once.

Examples

Division assignment using numbers

js
let bar = 5;

bar /= 2; // 2.5
bar /= 2; // 1.25
bar /= 0; // Infinity

Other non-BigInt values are coerced to numbers:

js
let bar = 5;
bar /= "2"; // 2.5
bar /= "foo"; // NaN

Division assignment using BigInts

js
let foo = 3n;
foo /= 2n; // 1n
foo /= 2n; // 0n

foo /= 0n; // RangeError: BigInt division by zero
foo /= 1; // TypeError: Cannot mix BigInt and other types, use explicit conversions

Specifications

Specification
ECMAScript® 2025 Language Specification
# sec-assignment-operators

Browser compatibility

BCD tables only load in the browser

See also