Как отображать числа с научными обозначениями в jquery-inputmask - PullRequest
0 голосов
/ 24 мая 2019

Я использую плагин jquery-inputmask для обработки целых чисел / чисел с плавающей запятой, мои варианты маскирования:

{ allowMinus: true, rightAlign: false, digits: 3 }

Проблема в том, что пользователь вводит большое значение, например:

123456789012345678901234567890

это сохраняется с экспоненциальной величиной:

1.2345678901234568e + 29

Теперь, когда я хочу установить этот номер: 1.2345678901234568e + 29 в качестве значения для входа применяется маскирование, поэтому это число преобразуется в:

+ 291.2345678901234568

Есть ливариант, как я могу показать большие числа, как это, с помощью плагина inputmask?

Ответы [ 2 ]

1 голос
/ 24 мая 2019

Вы знаете, что в JavaScript вы можете хранить только 53 бита как число.Для решения этой проблемы вы можете использовать это решение ( Добавить очень большие числа ) или ( BigInt )

BigInt : BigInt является встроеннымв объекте, который обеспечивает способ представления целых чисел больше 2 ^ 53, что является наибольшим числом, которое JavaScript может надежно представить с помощью примитива Number.

1 голос
/ 24 мая 2019

По этой причине вы можете использовать BigInt:

https://github.com/tc39/proposal-bigint

...