Теоретический предел может составлять 2,147,483,647, но практический предел нигде не близок. Поскольку ни один объект в .NET-программе не может превышать 2 ГБ, а тип строки использует unicode (два байта для каждого символа), лучшее, что вы могли бы сделать, это 1 073 741 823, но вы вряд ли сможете выделить это на 32-битная машина.
Это одна из тех ситуаций, где [" Если вам нужно спросить, возможно, вы что-то не так сделали. "].
**
была введена в ECMAScript 2016 (ES7). Но имейте в виду, что не все среды javascripts реализуют его (например, Internet Explorer не поддерживает его).
Если вы хотите быть кросс-браузерным, вы должны использовать Math.pow
.
Math.pow(4, 5)