When parsing large decimal numbers, javascript arbitrary rounds and loses some decimal places.
With a 'small' number, everything happens as expected:
var str = '1.1234567899'; -> undefined
console.log( Number(str) ); -> 1.1234567899
With a 'large' number, it's rounded and some data are lost:
var str = '123456789.1234567899'; -> undefined
console.log( Number(str) ); -> 123456789.12345679
Notice the diff between input and output: 123456789.1234567899 !== 123456789.12345679
I'm trying to understand why it happens. Anyone?