>>> Math.pow(2,53)
9007199254740992
>>> Math.pow(2,53) + 1
9007199254740992
>>> Math.pow(2,52) + 1
4503599627370497
>>> Math.pow(2,52)
4503599627370496
Недавно нарвался на сие, когда самописным JSON-RPC выковыривал из базы long айдишники.
Опасайтеся други. Коварство в том что визуально число выглядит как целое, т.е. без точек, 1.12343E12 и прочих
Да отчего так и почему догадаться нетрудно, просто не все задумываются что Number в javascript это double, а с датами там все еще кучерявее (long в дату также не влезает в ff)