0.1
    2 ** 1024; // Infinity
    NaN ** 2; // NaN
    NaN ** 0; // 1
    1 ** Infinity; // NaN
    
    2n ** 3n; // 8n
    2n ** 1024n; // A very large number, but not Infinity
    
    2n ** 2; // TypeError: Cannot mix BigInt and other types, use explicit conversions
    
    // To do exponentiation with a BigInt and a non-BigInt, convert either operand
    2n ** BigInt(2); // 4n
    Number(2n) ** 2; // 4
    

###  Associativity

js

    
    
    2 ** 3 ** 2; // 512
    2 ** (3 ** 2); // 512
    (2 ** 3) ** 2; // 64
    

###  Usage with unary operators

To invert the sign of the result of an exponentiation expression:

js

    
    
    -(2 ** 2); // -4
    

To force the base of an exponentiation expression to be a negative number:

js

    
    
    (-2) ** 2; // 4
    

##  Specifications

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

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

##  See also

  * [ Addition ( ` + ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Addition)
  * [ Subtraction ( ` - ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Subtraction)
  * [ Division ( ` / ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Division)
  * [ Multiplication ( ` * ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Multiplication)
  * [ Remainder ( ` % ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Remainder)
  * [ Increment ( ` ++ ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Increment)
  * [ Decrement ( ` -- ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Decrement)
  * [ Unary negation ( ` - ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Unary_negation)
  * [ Unary plus ( ` + ` ) ](/en-US/docs/Web/JavaScript/Reference/Operators/Unary_plus)

##  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  Jan 20, 2024  by  [ MDN contributors ](/en-
US/docs/Web/JavaScript/Reference/Operators/Exponentiation/contributors.txt) .

[ View this page on GitHub
](https://github.com/mdn/content/blob/main/files/en-
us/web/javascript/reference/operators/exponentiation/index.md?plain=1 "Folder:
en-us/web/javascript/reference/operators/exponentiation \(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%2FExponentiation&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%2Fexponentiation%60%0A*+MDN+URL%3A+https%3A%2F%2Fdeveloper.mozilla.org%2Fen-
US%2Fdocs%2FWeb%2FJavaScript%2FReference%2FOperators%2FExponentiation%0A*+GitHub+URL%3A+https%3A%2F%2Fgithub.com%2Fmdn%2Fcontent%2Fblob%2Fmain%2Ffiles%2Fen-
us%2Fweb%2Fjavascript%2Freference%2Foperators%2Fexponentiation%2Findex.md%0A*+Last+commit%3A+https%3A%2F%2Fgithub.com%2Fmdn%2Fcontent%2Fcommit%2F18ff4e50476f7420f5ff744b53c49b8cd890d19d%0A*+Document+last+modified%3A+2024-01-20T06%3A01%3A22.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

  * [