Skip to content

numberMask ​

Маска для чисел и сумм: разделитель тысяч, дробная часть, минус, префикс и суффикс.

Сигнатура ​

ts
function numberMask(options?: NumberMaskOptions): Mask
ОпцияПо умолчаниюОписание
thousands' 'Разделитель тысяч
decimal','Разделитель дробной части. Точка с цифровой клавиатуры тоже принимается
precision2Знаков после запятой; 0 — только целые
negativefalseРазрешить минус
prefix, suffix''Текст до и после числа: '$', ' ₽', ' %'

Значение без маски — строка в формате JavaScript: 1 234,5 → '1234.5'. Превратить в число — Number(unmask(...)) или coerce.number в схеме. Лишние нули в начале убираются, ,5 превращается в 0,5.

Примеры ​

ts
mask('1234567.891', numberMask());                                   // '1 234 567,89'
mask('1234567.5', numberMask({ thousands: ',', decimal: '.' }));     // '1,234,567.5'
mask('-42', numberMask({ negative: true, precision: 0 }));           // '-42'
mask('99', numberMask({ prefix: '$', thousands: ',', decimal: '.' })); // '$99'
unmask('1 500,50 ₽', money({ currency: '₽' }));                      // '1500.50'

См. также ​