javascript - 使用 Javascript 和 Angularjs 创建数组的子集

标签 javascript arrays angularjs

我正在尝试以重复的方式创建数组的子集。我有一个形式为 [0,1,2,3,4,5,6] 的数组。我想创建像 [0,1,2] 这样的子集, [1,2,3] , [2,3,4] , [3,4,5] , [4,5,6] , [5,6,0] , [6,0,1] , [0,1,2]等等。但是,它在 [4,5,6] 之后并没有中断。 。

这是我的代码

var app = angular.module('app',[]);
app.controller('EventController',function EventController($scope) {
   $scope.count = 0;
   var arr = [], subArr = [], currentIndex;  
   for(var i = 0; i < 7; i++) {
      arr.push(i)
   }
   $scope.next = function() {
   currentIndex = $scope.count;  
   subArr = [];
   $scope.count++;    
   subArr.push(currentIndex);
   subArr.push(currentIndex+1);
   subArr.push(currentIndex+2);
   if(arr.indexOf(currentIndex+1) == -1) {
     console.log(currentIndex+1,'Element not available');
     $scope.count = 0;
     currentIndex = $scope.count
   }
   console.log(subArr);
 } 
});

Here is the fiddle

任何想法将不胜感激。

最佳答案

Try this:

var app = angular.module('app',[]);
app.controller('EventController',function EventController($scope) {
  $scope.count = 0;
  var  subArr = [], currentIndex; 
  $scope.arr = [];
  for(var i = 0; i < 7; i++) {
    $scope.arr.push(i);
  }

  $scope.next = function() {
    currentIndex = $scope.count;
    //console.log(currentIndex);
    subArr = [];
    $scope.count++;    
    subArr.push(currentIndex);  
    if($scope.arr.indexOf(currentIndex) == $scope.arr.length -2) {
    console.log(currentIndex+2,'Element not available');
       subArr.push(currentIndex+1);
        $scope.count = 0;
     subArr.push($scope.arr[0]);

    }
    else if($scope.arr.indexOf(currentIndex) == $scope.arr.length -1) {
    console.log(currentIndex+1,'Element not available');
     subArr.push($scope.arr[0]);
      subArr.push($scope.arr[1]);
      currentIndex = $scope.count;
    }
        else{
    subArr.push(currentIndex+1);
    subArr.push(currentIndex+2);
    }
    console.log(subArr);
  }
});

关于javascript - 使用 Javascript 和 Angularjs 创建数组的子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35448409/

相关文章:

javascript - DevTools 无法加载 SourceMap : Could not parse content for file

javascript - 如何来回制作(绳索) "swing"的图像?

android - CheckBox[] 与 onClickListener[]?

javascript - Json解码 “Trying to get property of non-object”错误

jquery - 单击按钮应使用 ag-grid 中的 cellRenderer 在 <div> 中显示数据

javascript - 在 Web 应用程序中共享 Excel

javascript - 在 Google 表格中使用字符串中的变量

将 10 位 Int 转换为 Hex,然后将其转换为 C 中的值

javascript - 使用 jQuery 处理这些数据的正确方法是什么?

php - angularjs 为隐藏字段提供 'undefined' ,并以 php session 变量作为值