AngularJS forEach比较下一个索引数组

时间:2015-08-13 00:04:55

标签: angularjs foreach compare next

我有一个JSON,它返回一个数组内的对象。

我使用angular.forEach来迭代数据。每个对象都有一个日期,我想与列表中的下一个对象进行比较。

怎么可以这样做?

下面的代码段会返回所有日期,我想检查下一个条目是否与上一个日期相同。如果不是,则将这两个值与Moment.js进行比较

所以第一个[0]和第二个[1]的日期相同,但是第三个日期[2]有" 2015-01-03"我需要抓住这个并比较这两个值。

非常感谢您的帮助!



    $scope.my_data = [
      {
        date: "2015-01-02"
      },
      {
        date: "2015-01-02"
      },
      {
        date: "2015-01-03"
      },
    ];

    angular.forEach($scope.my_data, function(value1, key1) {
      var missing_days = value1.date;
      console.log('missing days', missing_days);
    });




1 个答案:

答案 0 :(得分:1)

您可以使用angular.forEach轻松完成此操作,只需使用提供的索引向前看原始数据集中的一个位置

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.my_data = [{
    date: "2015-01-02"
  }, {
    date: "2015-01-02"
  }, {
    date: "2015-01-03"
  }, ];

  angular.forEach($scope.my_data, function(value, key) {
      var missing_days = value.date;
      console.log('missing days', missing_days);
      var nextObject = $scope.my_data[key+1 % $scope.my_data.length];
      console.log(nextObject);
  });
});

http://plnkr.co/edit/y4qeNe?p=preview