Ответ 1
Взято из MDN:
Синтаксис
numObj.toLocaleString([locales [, options]])
toLocaleString
принимает 2 аргумента. Первый - это локаль, второй - варианты. Что касается опций, которые вы ищете:
minimumFractionDigits
Минимальное количество цифр цифр. Возможные значения: от 0 до 20; по умолчанию для простого номера и процентное форматирование - 0; по умолчанию для форматирования валюты используется количество младших цифр, предоставленных кодом валюты ISO 4217 list (2, если список не предоставляет эту информацию).
https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString
Чтобы иметь возможность устанавливать параметры без установки языкового стандарта, вы можете передать undefined в качестве первого аргумента:
var num = 2046430;
num.toLocaleString(undefined, {minimumFractionDigits: 2}) // 2,046,430.00
Однако это также позволяет фракции быть длиннее 2 цифр. Поэтому нам нужно искать еще один параметр maximumFractionDigits
. (Также на этой странице MDN)
var num = 2046430.123;
num.toLocaleString(undefined, {
minimumFractionDigits: 2,
maximumFractionDigits: 2
}) // 2,046,430.12