Параметр digitGroupSeparator в библиотеке AutoNumeric
отвечает за символ, который используется для визуального разделения
разрядов числа. Он влияет исключительно на отображение числа в
пользовательском интерфейсе и не изменяет его внутреннее числовое
значение. Основная задача этого параметра — повышение читаемости больших
чисел за счёт группировки цифр по тысячам или другим логическим
блокам.
При работе с финансовыми, статистическими или инженерными данными числа часто достигают значительных размеров. Без разделителей разрядов такие значения становятся трудночитаемыми:
10000001234567890С применением группировки:
1,000,0001,234,567,890Параметр digitGroupSeparator определяет символ, который
вставляется между этими группами.
В стандартной конфигурации AutoNumeric используется запятая:
{
digitGroupSeparator: ','
}
Пример отображения:
10000001,000,000При этом внутреннее значение остаётся числом 1000000, а
форматирование применяется только к строковому представлению в
input-элементе.
AutoNumeric не ограничивает выбор символа разделителя. Возможны различные варианты в зависимости от локали и требований интерфейса.
digitGroupSeparator: ','
Формат:
1,234,567digitGroupSeparator: '.'
Формат:
1.234.567digitGroupSeparator: ' '
Формат:
1 234 567digitGroupSeparator: '\u00A0'
Используется для предотвращения разрыва числа при переносе строки:
1 234 567Это особенно важно в таблицах, отчётах и финансовых интерфейсах.
Если группировка не требуется, параметр задаётся пустой строкой:
digitGroupSeparator: ''
Формат:
1234567AutoNumeric использует форматирование в реальном времени. При вводе числа:
Пример:
10000001,000,000При удалении символов AutoNumeric автоматически корректирует группы разрядов, сохраняя целостность числа.
Параметр digitGroupSeparator работает совместно с
digitGroupSpacing, который определяет размер
группировки.
digitGroupSeparator: ',',
digitGroupSpacing: 3
Результат:
1,234,567,890digitGroupSeparator: ' ',
digitGroupSpacing: 2
Результат:
12 34 56 78 90Такие варианты используются редко, но могут быть полезны в специфических финансовых или научных форматах.
Разные регионы используют разные соглашения о форматировании чисел:
| Регион | Разделитель |
|---|---|
| США, Великобритания | , |
| Германия, Франция (в некоторых случаях) | . |
| Индия | , с нестандартной группировкой |
| Международный стандарт | пробел |
AutoNumeric позволяет вручную задать любой формат, не привязываясь к системной локали браузера.
Важно учитывать, что digitGroupSeparator не должен
конфликтовать с десятичным разделителем
decimalCharacter.
Неправильная конфигурация:
digitGroupSeparator: '.',
decimalCharacter: '.'
Такая настройка приводит к неоднозначности при парсинге числа.
Корректные комбинации:
digitGroupSeparator: '.',
decimalCharacter: ','
или
digitGroupSeparator: ',',
decimalCharacter: '.'
AutoNumeric позволяет изменять форматирование на лету:
anInstance.update({
digitGroupSeparator: ' '
});
После обновления все текущие значения автоматически переформатируются в соответствии с новым правилом.
При извлечении значения через API AutoNumeric:
.getNumericString() — возвращает число без
разделителей.getFormatted() — возвращает строку с
разделителями.getNumber() — возвращает числовой типПример:
Формат на экране:
1,234,567Методы:
an.getNumericString(); // "1234567"
an.getFormatted(); // "1,234,567"
an.getNumber(); // 1234567
digitGroupSeparator влияет только на
.getFormatted() и визуальное представление.
В банковских и бухгалтерских системах параметр применяется для:
Часто используется совместно с:
decimalPlaces)minimumValue,
maximumValue)currencySymbol)Пример конфигурации:
{
digitGroupSeparator: ',',
decimalCharacter: '.',
decimalPlaces: 2,
currencySymbol: '$',
currencySymbolPlacement: 'p'
}
AutoNumeric оптимизирует форматирование так, чтобы:
Разделитель групп не влияет на математическую точность, но участвует в строковых операциях форматирования, которые выполняются при каждом изменении значения.
Если в качестве digitGroupSeparator передан некорректный
тип:
Пример нежелательной конфигурации:
digitGroupSeparator: null
Результат может отличаться в зависимости от версии, но обычно приводит к отключению группировки.
Параметр полностью зависит от JavaScript-строк и не использует системные API форматирования чисел, поэтому:
Intl.NumberFormatdigitGroupSeparator является одним из ключевых
параметров визуального форматирования в AutoNumeric, поскольку:
Его настройка обычно выполняется на уровне глобальной конфигурации приложения или конкретного компонента ввода, особенно в системах, работающих с финансовыми или аналитическими данными.