在 TypeScript 中为 .toLocaleString() 提供小数点数
Provide Decimal Point Number to .toLocaleString() in TypeScript
我正在尝试形成一个数字,其中的字符串有一个小数分隔符为了能够应用 .toLocaleString() 方法,该方法不能应用于字符串。
const initialString = 122; //number
const decimalStr = initialString.toFixed(initialString); //string
const formattedStr = decimalStr.toLocaleString('de-DE');//error,decimalStr is a string
如果要对 decimalStr
应用任何转换,小数位将 丢失 (即 decimalStr = +decimalStr
或 decimalStr = Number(decimalStr)
。 => 问题,需要保留小数位。
How can i keep the decimal points and make the .toLocaleString()
see calling value as a number?
Number.toLocaleString
方法接受名为 options
的第二个参数。
您可以使用此参数来控制小数位数。因此,您的电话将是:
const initialNumber = 122;
const formattedStr = initialNumber.toLocaleString('de-DE', {
minimumFractionDigits: 2,
maximumFractionDigits: 2
});
有关详细信息,请查看 here。
另外,请注意 toFixed
和 maximumFractionDigits
都有限制:分别为 100 和 20。所以你提供的例子在第二行失败了。
我正在尝试形成一个数字,其中的字符串有一个小数分隔符为了能够应用 .toLocaleString() 方法,该方法不能应用于字符串。
const initialString = 122; //number
const decimalStr = initialString.toFixed(initialString); //string
const formattedStr = decimalStr.toLocaleString('de-DE');//error,decimalStr is a string
如果要对 decimalStr
应用任何转换,小数位将 丢失 (即 decimalStr = +decimalStr
或 decimalStr = Number(decimalStr)
。 => 问题,需要保留小数位。
How can i keep the decimal points and make the .toLocaleString() see calling value as a number?
Number.toLocaleString
方法接受名为 options
的第二个参数。
您可以使用此参数来控制小数位数。因此,您的电话将是:
const initialNumber = 122;
const formattedStr = initialNumber.toLocaleString('de-DE', {
minimumFractionDigits: 2,
maximumFractionDigits: 2
});
有关详细信息,请查看 here。
另外,请注意 toFixed
和 maximumFractionDigits
都有限制:分别为 100 和 20。所以你提供的例子在第二行失败了。