如何以小数点后两位显示数字 - Angularjs

时间:2017-08-17 06:41:21

标签: javascript angularjs

我想显示总是带有两个十进制值的数字。 我可以显示带有两个十进制值的值。

$scope.value1 = 10000;
$scope.value2 = 12444.44443;

在我使用的控制器中 $ scope.value1 = $ scope.value1.toFixed(2); $ scope.value2 = $ scope.value2.toFixed(2); 然后在HTML中,我可以显示为“ 10000.00 ”“ 12444.44 ”。但它也改变了我的模型价值。我不想改变价值。我希望仅将值显示为“ 1000.00 ”“ 12444.44 ”。

即使我尝试了

{{value1 | setDecimal : 2 }}
{{value2 | setDecimal : 2 }}

显示为

10000
12444.44

此setDecimal仅更改我的小数值。

我想显示像setDecimal,但需要显示10000也为10000.00

4 个答案:

答案 0 :(得分:5)

您可以在模板中使用number过滤器作为管道来实现此目的:

angular.module('app', []).controller('MyCtrl', ['$scope', function($scope) {
  $scope.value1 = 10000;
  $scope.value2 = 12444.44443;
}]);
<div ng-app="app">
  <div ng-controller="MyCtrl">
    <p>{{ value1 | number: 2 }}</p>    
    <p>{{ value2 | number: 2 }}</p>
  </div>
</div>

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>

答案 1 :(得分:2)

请参阅代码输出。我认为Documents非常有帮助

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>

<div ng-app> {{12342 | number: 2}}</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

value.toFixed(2)

应该提供你需要的东西

答案 3 :(得分:0)

使用toFixed(2)方法将其固定为两个

Demo

parseFloat(Math.round(num3 * 100) / 100).toFixed(2);