使用sap.ui.core.format.NumberFormat将所有值格式化为数千

时间:2016-03-08 16:06:36

标签: formatting sapui5 number-formatting sap-fiori

目前我正在使用NumberFormat类格式化浮点值,格式为以下:

formatOptions: {
  style : 'short', 
  shortDecimals: 1
}

https://sapui5.netweaver.ondemand.com/docs/api/symbols/sap.ui.core.format.NumberFormat.html

因此,使用当前的格式化程序,将5,000,000的值显示为5.0 M.

我想知道是否有一种琐碎的方式使用格式化程序强制所有值进入任何其他面额(例如可能数千)。

即5 M应格式化为5000 K.

1 个答案:

答案 0 :(得分:2)

不,没有琐碎的方式。 'short' is a special CLDR number pattern。面额在本地化中配置:这是每种语言中每个量级的条目。因此,您必须更改语言的本地化数据(也可能更改其他语言)或创建新语言并将其用于NumberFormat

如果您想要一个固定的面额我建议使用自定义格式化程序功能或自定义数据类型。格式化函数的Here's an example

formatThousands:function(value){
   var numberFormat = NumberFormat.getFloatInstance({maxFractionDigits:1});
   var text = numberFormat.format(value/1000)+" K";
   return text;
}