如何在ngRepeat中按索引计算数字之间的%差异

时间:2015-09-01 01:27:22

标签: angularjs mean

我有一个显示数据对象的简单表,数据对象的一个​​属性是数字。

这是我的表格,其中包含ngRepeat:

<tbody>
    <tr ng-repeat="number in Numbers">
      <td>{{ $index }}</td>
    <td>{{ number.num }}</td>
    </tr>
</tbody>

现在我要做的是添加一个列来计算并显示第一个和前一个数字之间的百分比差异。有没有办法用ngRepeat做到这一点?我尝试添加这样的列:

<td>{{ number.num[$index] / number.num[$index + 1] }}</td>

但最终它没有用。它最终将该列中的所有数据显示为NaN。我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:0)

user2341963有正确答案:

&#13;
&#13;
angular.module('test', [])

.controller('Test', function($scope) {
  var numbers = [1,3,5,53,2,552,32];
  
  $scope.Numbers = numbers.map(function(n) {
    return {num: n};
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.min.js"></script>

<div ng-app='test' ng-controller='Test'>
  <div ng-repeat="number in Numbers">
    index: {{$index}} |
    number: {{number.num}} |
    result: {{Numbers[$index].num/Numbers[$index + 1].num}}
  </div>
</div>
&#13;
&#13;
&#13;