ecated features ](/en-US/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features)

##  In this article

  * Try it 
  * Syntax 
  * Description 
  * Examples 
  * Specifications 
  * Browser compatibility 
  * See also 

#  Remainder assignment (%=)

The **remainder assignment (` %= ` ) ** operator performs [ remainder ](/en-
US/docs/Web/JavaScript/Reference/Operators/Remainder) on the two operands and
assigns the result to the left operand.

##  Try it

##  Syntax

js

    
    
    x %= y
    

##  Description

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

##  Examples

###  Using remainder assignment

js

    
    
    let bar = 5;
    
    bar %= 2; // 1
    bar %= "foo"; // NaN
    bar %= 0; // NaN
    
    let foo = 3n;
    foo %= 2n; // 1n
    

##  Specifications

Specification  
---  
[ ECMAScript Language Specification  
#  sec-assignment-operators  ](https://tc39.es/ecma262/multipage/ecmascript-
language-expressions.html#sec-assignment-operators)  
  
##  Browser compatibility

BCD tables only load in the browser  with JavaScript enabled. Enable
JavaScript to view data.

##  See also

  * [ Assignment operators in the JS guide ](/en-US/docs/Web/JavaScript/Guide/Expressions_and_operators#assignment_operators)
  * [ Remainder ( ` % ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Remainder)

##  Help improve MDN

Was this page helpful to you?

Yes  No

[ Learn how to contribute
](https://github.com/mdn/content/blob/main/CONTRIBUTING.md "This will take you
to our contribution guidelines on GitHub.") .

This page was last modified on  Oct 13, 2023  by  [ MDN contributors ](/en-
US/docs/Web/JavaScript/Reference/Operators/Remainder_assignment/contributors.txt)
.

[ View this page on GitHub
](https://github.com/mdn/content/blob/main/files/en-
us/web/javascript/reference/operators/remainder_assignment/index.md?plain=1
"Folder: en-us/web/javascript/reference/operators/remainder_assignment \(Opens
in a new tab\)") â¢  [ Report a problem with this content
](https://github.com/mdn/content/issues/new?template=page-report.yml&mdn-
url=https%3A%2F%2Fdeveloper.mozilla.org%2Fen-
US%2Fdocs%2FWeb%2FJavaScript%2FReference%2FOperators%2FRemainder_assignment&metadata=%3C%21--+Do+not+make+changes+below+this+line+--%3E%0A%3Cdetails%3E%0A%3Csummary%3EPage+report+details%3C%2Fsummary%3E%0A%0A*+Folder%3A+%60en-
us%2Fweb%2Fjavascript%2Freference%2Foperators%2Fremainder_assignment%60%0A*+MDN+URL%3A+https%3A%2F%2Fdeveloper.mozilla.org%2Fen-
US%2Fdocs%2FWeb%2FJavaScript%2FReference%2FOperators%2FRemainder_assignment%0A*+GitHub+URL%3A+https%3A%2F%2Fgithub.com%2Fmdn%2Fcontent%2Fblob%2Fmain%2Ffiles%2Fen-
us%2Fweb%2Fjavascript%2Freference%2Foperators%2Fremainder_assignment%2Findex.md%0A*+Last+commit%3A+https%3A%2F%2Fgithub.com%2Fmdn%2Fcontent%2Fcommit%2F71cf0cb885d46d83af054ae4df350248e246f006%0A*+Document+last+modified%3A+2023-10-13T19%3A34%3A44.000Z%0A%0A%3C%2Fdetails%3E
"This will take you to GitHub to file a new issue.")

[ MDN logo  ](/)

Your blueprint for a better internet.

  * [ MDN on Mastodon  ](https://mozilla.social/@mdn)
  * [ MDN on X (formerly Twitter)  ](https://twitter.com/mozdevnet)
  * [ MDN on GitHub  ](https://github.com/mdn/)
  * [ MDN Blog RSS Feed  ](/en-US/blog/rss.xml)

##  MDN

  * [ About ](/en-US/about)
  * [ Blog ](/en-US/blog/)
  * [ Careers ](https://www.mozilla.org/en-US/careers/listings/?team=ProdOps)
  * [ Advertise with us ](/en-US/advertising)

##  Support

  * [ Product help ](https://support.mozilla.org/products/mdn-plus)
  * [ Report an issue ](/en-US/docs/MDN/Community/Issues)

##  Our communities

  * [ MDN Community ](/en-US/community)
  * [ MDN Forum ](https://discourse.mozilla.org/c/mdn/236)
  * [ MDN Chat ](/discord)

##  Developers

  * [ Web Technologies ](/en-US/docs/Web)
  * [ Learn Web Development ](/en-US/docs/Learn)
  * [ MDN Plus ](/en-US/plus)
  * [ Hacks Blog ](https://hacks.mozilla.org/)

[ Mozilla logo  ](https://www.mozilla.