【发布时间】:2014-09-04 13:13:21
【问题描述】:
我正在构建一个涉及大量数据的 Angular 应用程序。我想缩短它们的显示方式,所以我构建了一个快速而肮脏的过滤器,例如将 '1000000000' 替换为 '$10 亿',但它真的很脏,它只是截断数字而不是四舍五入。
这里是:
.filter('largeAmountCurrency', function() {
return function(input) {
if (!input) return;
var oneBillion = 1000000000,
oneMillion = 1000000;
if (input > oneBillion)
return '$' + parseInt(input / oneBillion) + '.' +
String(parseInt(input - parseInt(input/oneBillion))).substring(1,3) + 'Bn';
if (input > oneMillion)
return '$' + parseInt(input / oneMillion) + '.' +
String(parseInt(input - parseInt(input/oneMillion))).substring(1,3) + 'M';
return input;
}
});
他们是否有任何预先构建的角度过滤器可以完成这项工作?或者我怎样才能显着缩短它?
【问题讨论】:
标签: javascript angularjs filter