我知道这个问题的普通JavaScript代码有答案,但在这种情况下它们不可用。
我有一个必须填充数据的表。我的代码如下所示:
<tr ng-repeat="rows in $ctrl.matrix[0] track by $index">
<td>{{$ctrl.labels[$index]}}</td>
<td ng-repeat="label in $ctrl.xMatrix">{{$ctrl.matrix[$index][$parent.$index].toFixed(2)}}</td>
</tr>
可以看出,使用toFixed(2)
删除点后的两位数字。
我也想要这个改变:
34.90 => 34.9
0.00 => 0
正如它所说here,我是parseFloat(n.toFixed(2));
,所以在我的情况下它会是:
{{parseFloat($ctrl.matrix[$index][$parent.$index].toFixed(2))}}
或
{{$ctrl.parseFloat(matrix[$index][$parent.$index].toFixed(2))}}
但在这两种情况下我都没有错误,我的表是空的。
有没有办法在{{}}
内删除这些零?
答案 0 :(得分:0)
确保将您的号码转换为“数字”。然后施放为一个字符串。
var numberstring = "1.2350000";
var number = Number(numberstring);
console.log(typeof number);
var zerodown = number.toString();
console.log(zerodown)
更改{{}}内的数字的可能性不大。这是动态应用的变量的占位符。您应该在服务器端或在解析值之后执行此操作。
答案 1 :(得分:0)
简单使用 number Angular Js过滤器
{{$ctrl.matrix[$index][$parent.$index] | number}}
OR
使用 $ eval
{{$eval($ctrl.matrix[$index][$parent.$index])}}