Javascript представляет все числа как числа с плавающей запятой двойной точности. Это означает, что он теряет точность при работе с числами на самом верхнем конце 64-битного типа данных Java Long - что-либо после 17 цифр. Например, число:
714341252076979033
... становится:
714341252076979100
В моей базе данных используются длинные идентификаторы, и некоторые из них находятся в опасной зоне. Я мог бы изменить недопустимые значения в базе данных, но в моем приложении это было бы сложно. Вместо этого прямо сейчас я довольно старательно проверяю, что сервер кодирует длинные идентификаторы как строки во всех ответах ajax.
Однако я бы предпочел иметь дело с этим в Javascript. Мой вопрос: есть ли лучший способ заставить анализ JSON обрабатывать число как строку?