Ext.util.Format.number - 添加千位分隔符时如何保留小数位?

时间:2012-09-25 15:13:57

标签: javascript extjs extjs4

我有一堆不同测量单位的数字需要不同的小数精度。它们都在同一个组件中呈现。在这个组件中 - 我需要格式化数字以包含一千个分隔符。

这就是我目前正在做的事情

Ext.util.Format.number(floatValue.toFixed(this.euStore.getById(euId).get('DecimalPrecision')), '0,000.00');

this.euStore.getById(euId).get('DecimalPrecision')返回0到4之间的任何地方。

当调用Ext.util.Format.number来添加千位分隔符时,我需要保留这些小数位,因为它总是使用当前格式获得2位小数,'0,000.00'

有没有办法用内置的数字格式化器来完成这个或者我需要编写自己的函数吗?谢谢!

1 个答案:

答案 0 :(得分:0)

所以我在发布后不久就搞清楚了。我在var

中保存了小数精度

var decimalPrecision = this.euStore.getById(euId).get('DecimalPrecision')

然后使用Ext.String.repeat构建格式字符串,根据精度值重复小数位。

var format = '0,000.' + Ext.String.repeat('0', decimalPrecision);

然后将其传递给

Ext.util.Format.number(myNumber, format)

获得我需要的结果。谢谢你的建议!