React-native 将数字设置为按语言环境设置的字符串
React-native set number to string by locale
我有一个数字,如果我使用 amount.toFixed() 我会得到这个字符串“100.00”。我希望结果与语言环境一致。
如果语言环境是意大利语,则结果为 100,00,
如果区域设置为英语,则结果为 100.00
我能用什么?
amount.toFixed(2)
我用的是react-native
Javascript 有一个 built-in 函数,Intl.NumberFormat:
const updateNr = (val: any) => {
var formatter = new Intl.NumberFormat("it-IT");
updateValue(formatter.format(val.replace(/,/g, ""))); //Remove ',' to format number again
};
或者,如果您使用的是 React,则可以使用 react-number-format plugin。
你应该直接使用 javascript built-in 方法
国际号码格式。有很多有用的属性。
要格式化您的号码,您可以使用属性 maximumSignificantDigits
、minimumSignificantDigits
、maximumFractionDigits
、minimumFractionDigits
和 minimumIntegerDigits
。
这是一个有效的 fiddle:
var number = "123456.78"; // string
console.log(new Intl.NumberFormat('de-DE', { style: 'decimal'}).format(number));
console.log(new Intl.NumberFormat('en-US', { style: 'decimal', maximumSignificantDigits:7 }).format(number));
我有一个数字,如果我使用 amount.toFixed() 我会得到这个字符串“100.00”。我希望结果与语言环境一致。
如果语言环境是意大利语,则结果为 100,00, 如果区域设置为英语,则结果为 100.00
我能用什么?
amount.toFixed(2)
我用的是react-native
Javascript 有一个 built-in 函数,Intl.NumberFormat:
const updateNr = (val: any) => {
var formatter = new Intl.NumberFormat("it-IT");
updateValue(formatter.format(val.replace(/,/g, ""))); //Remove ',' to format number again
};
或者,如果您使用的是 React,则可以使用 react-number-format plugin。
你应该直接使用 javascript built-in 方法 国际号码格式。有很多有用的属性。
要格式化您的号码,您可以使用属性 maximumSignificantDigits
、minimumSignificantDigits
、maximumFractionDigits
、minimumFractionDigits
和 minimumIntegerDigits
。
这是一个有效的 fiddle:
var number = "123456.78"; // string
console.log(new Intl.NumberFormat('de-DE', { style: 'decimal'}).format(number));
console.log(new Intl.NumberFormat('en-US', { style: 'decimal', maximumSignificantDigits:7 }).format(number));