Numbers in JavaScript cannot be arbitrarily large or precise - numbers are 64-bit values (based on the IEEE 754 standard) and you've hit the limit with your number. You'll have to use an external library such as
bignumber.js[
^] for arbitrary precision.