Abh*_*hek 12 javascript number-formatting angularjs angularjs-interpolate
Angular noob在这里!我试图在我的HTML中显示一个百分比值,如下所示:
<td> {{ ((myvalue/totalvalue)*100) }}%</td>
Run Code Online (Sandbox Code Playgroud)
它工作但有时它给出一个非常长的小数,看起来很奇怪.如何将其四舍五入后的2位数?有更好的方法吗?
spi*_*k3s 27
您可以使用过滤器,如下面的jeffjohnson9046
过滤器假设输入将是十进制形式(即17%为0.17).
myApp.filter('percentage', ['$filter', function ($filter) {
return function (input, decimals) {
return $filter('number')(input * 100, decimals) + '%';
};
}]);
Run Code Online (Sandbox Code Playgroud)
用法:
<tr ng-repeat="i in items">
<td>{{i.statistic | percentage:2}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
Exp*_*lls 18
你可以使用的toFixed方法Number.
((myValue/totalValue)*100).toFixed(2)
Run Code Online (Sandbox Code Playgroud)
为此,我经常使用内置的"数字"过滤器 ;
<span>{{myPercentage | number}}</span>
Run Code Online (Sandbox Code Playgroud)
2位小数:
<span>{{myPercentage | number:2}}</span>
Run Code Online (Sandbox Code Playgroud)
小数点后0;
<span>{{myPercentage | number:0}}</span>
Run Code Online (Sandbox Code Playgroud)