- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否有一种数字格式可以生成没有千位分隔符的本地化数字?
Globalize.format("1000.12", "n?" )
我意识到我可以做到:
Globalize.culture().numberFormat[","]="";
但我有一些字段需要关闭,而有些字段应该打开。例如...如果值为:
1000.123 -> 希望它根据语言环境显示格式化为 1000,12 或 1000.12..但没有千位分隔符。
最佳答案
您可以使用“d”格式而不是“n”格式来排除千位分隔符。
Globalize.format(1000.12, "d");
编辑
请注意,这仅在您不关心小数部分时才有效。
如果您关心小数部分,据我所知,您不能排除千位分隔符,除非通过以下方法之一:
将文化对象中的千位字符设置为空字符串:
Globalize.culture().numberFormat[","] = "";
Globalize.format(1000.12, "n");
你可以很容易地将它变成一个效用函数:
function formatNumberNoThousands(num, format, culture) {
var numberFormat = Globalize.cultures[culture || Globalize.culture().name].numberFormat,
thousands = numberFormat[","];
numberFormat[","] = "";
try { return Globalize.format(num, format, culture); }
finally { numberFormat[","] = thousands; }
}
对格式的字符串结果执行替换:
Globalize.format(1000.12, "d").replace(new RegExp("\\" + Globalize.culture().numberFormat[","], "g"), "");
它也可以很容易地变成一个效用函数:
function formatNumberNoThousands(num, format, culture) {
return Globalize.format(num, format).replace(new RegExp("\\" + Globalize.culture(culture).numberFormat[","], "g"), "");
}
使用这种方法,如果您知道格式化结果中的字符永远不会超过一千个,您可以删除正则表达式。否则,如果您计划大量使用它或在循环内使用它,您将需要缓存正则表达式并重新使用它。
关于jquery-globalization - 无千位分隔符的数字格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12147867/
我正在使用报表查看器控件 (rdlc) 生成报表。我的一列表示来自 SQL 数据库的十进制值,例如: 5199.9800 在此列的末尾,汇总了所有金额。因此,金额行以这种方式表示: =Fields!
我在这段代码中尝试用以下模式替换引号 (') 的千位分隔符 (.):###'###,## import java.text.*; public class NumberFormatTests
对于具有财务计算的网站,我尝试将包含在 HTML 输入字段中的每个数字转换为 xxx,xxx,xxx.xx 格式,其中千位分隔符为逗号,小数点为小数点。与我们从 Excel 中了解到的类似。 现在是挑
有没有一种方法可以使用字符串格式化程序将 Thousands、Millions、Billions 格式化为 123K、123M、123B 而无需更改代码以将值除以 Thousand、Million 或
我是一名优秀的程序员,十分优秀!