Как выполнить точную арифметику со значениями NumberLong в оболочке Mongo?Насколько я понимаю, Javascript имеет только один числовой тип - number
- обычно ограниченный 54-битной точностью с плавающей точкой.
Прямая арифметика с использованием (например) стандартного сложения показывает приведение приведения к типу с более низкой точностью:
> NumberLong("123456789012345678")+NumberLong("1")
123456789012345680
> NumberLong("123456789012345678")+NumberLong("2")
123456789012345680
Я вижу, как извлечь части NumberLong, используя строковые представления, но это кажется неэффективными не используется для таких арифметических операций, как увеличение или деление.