AngularJS中的数字格式

时间:2016-12-12 14:02:37

标签: javascript angularjs

我有这个号码。

20.79

我需要将号码视为

20,79

或者

1.200,76 €

如何更改。通过,并添加€货币?

谢谢!

解决方案

app.filter('customCurrency', function(){
    return function(input, symbol, place){
        if(isNaN(input)){
            return input;
        } else {
            var symbol = symbol || '$';
            var place = place === undefined ? true : place;
            if(place === true){
                return symbol + input;
            } else{
                var new_input = input.replace(".", ",");
                return new_input + symbol;
            }
        }
    }
})

2 个答案:

答案 0 :(得分:1)

您只需更改区域设置以匹配欧洲货币即可:

导入此库

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.6.0/angular-locale_de-de.js"></script>

在你的HTML中

<div>{{ myNumber | currency: '€' }}</div>

在您的控制器中

$scope.myNumber = 1220.79;

结果:1.220,79 €

请检查:JSFiddle Demo

答案 1 :(得分:0)

使用currency过滤器:

在Angular控制器中:

$scope.myNumber = 20.79;

在您的HTML页面中:

<div>{{myNumber | currency}}</div>

更新:如果您需要以€,2个选项显示:

  • 将您的区域设置设置为您所在的国家/地区:<script src="i18n/angular-locale_de-de.js"></script>(最佳选项)。
  • 不使用货币过滤器显示它:{{(myNumber | number: 2) + " €"}}

Demo on JSFiddle.