sidorares / json-bigint

JSON.parse/stringify with bigints support
MIT License
808 stars 192 forks source link

Fix parsing of very large bigints #80

Open shreyasminocha opened 2 years ago

shreyasminocha commented 2 years ago

This is something of a follow-up to #62. It replaces the isFinite check that keeps us from being able to parse large BigInts.

I will note that this changes the behaviour for something like JSONbig.parse('{"foo":1.99+308}'). Earlier that would throw an error, but now it returns Infinity. If you want me to handle that edge case separately or have suggestions for alternatives to using a regex for the validity check, let me know.