bestiejs / json3

A JSON polyfill. No longer maintained.
https://bestiejs.github.io/json3
Other
1.02k stars 150 forks source link

Keep precision in big numbers when parsing #81

Open oskarhane opened 9 years ago

oskarhane commented 9 years ago

Hey, I really don't know if I should treat this as a bug report or as a feature request.
Since we're hitting Javascripts limits I think it's a feature request.

When getting response from an API with, let's say this string: '{"x":9223372036854775807}' the JSON.parsed object o is o.x == 9223372036854776000.

There are two options here (that I can think of)

I would prefer to have the number as a string if the limit is hit.

What's your take on this?

PS. Here's a test.

testSuite.addTest("`parse`: Handle big Numbers", function (t) {
  var refString = '{"x":9223372036854775807}';
  var stringifiedObj = JSON.stringify(JSON.parse(refString));

  this.equal(refString, stringifiedObj, 'Compare strings before and after.');
  this.done(1);
});