如何格式化所需格式的数字 - 角度js

时间:2016-08-16 17:57:54

标签: angularjs numbers angular-filters

我的数字格式为7873,我需要将其转换为7'873格式。

我的第二种格式是3564.55443,我需要将其格式化为3564.5。对于第二种格式,我使用了数字:1过滤器,但它将其格式化为3,564.5,但我不需要前面的逗号。

有人可以帮我这么做吗?我正在使用Angular 1.5。

提前谢谢。

2 个答案:

答案 0 :(得分:2)

最佳解决方案可能是create your own custom filters,并将其与原生angular number filter结合使用。

app.filter('withTick', function () {
    return function(input) {
        return input.replace(/,/g, "'");
    };
});

实施{{ myNumber | number | withTick }}(首先使用Angular数字过滤器将使用逗号格式化数字),之后我们将所有逗号替换为'

注意:以上假设您想在逗号所在的位置放置'字符。如果你正在追求其他东西(比如只在第一个字符后放一个'),你可以操纵并返回输入,就像任何javascript字符串一样。

删除逗号类似:{{ myNumber | number:1 | noComma }}包含(舍入的)单个小数,然后您可以使noComma过滤器将所有,替换为''。< / p>

答案 1 :(得分:0)

双向做你想做的事:

  • 您可以创建自定义过滤器。适用于3564.55443的样本:

app.filter('numberformat', function ($filter) { return function (item) { var ret=item.toString().replace(",",""); return ret; }; });

并像这样使用它:

{{3564.55443 |数量:1 |的NumberFormat}}

或者如果存在本地,您可以在项目中导入它:

并通过附近的内容将其导入您的应用程序: <script src="i18n/angular-locale_de-de.js"></script>