如何只遍历数组中定义的索引?

时间:2014-01-02 16:25:53

标签: javascript arrays angularjs angularjs-ng-repeat

我试图仅通过我在angularjs中的数组中定义的索引进行迭代,如下所示:

控制器:

$scope.days = new Array();
$scope.days[4] = true;
$scope.days[7] = true;

模板:

<!-- Had to add 'track by $index' to suppress 'Duplicate in a repeater' error-->
<div ng-repeat="(day, value) in days track by $index"> 
    {{day}}: {{value}}
</div>

输出:

0:

1:

2:

3:

4: true

5:

6:

7: true

为什么ng-repeat'填补了缺口'指数?我怎样才能使它只显示我明确定义的打印索引?如果我console.log出我的数组,它只打印我定义的索引。

1 个答案:

答案 0 :(得分:3)

用对象文字替换你的代码:

$scope.days = { 4: true, 7: true }

或者更改你的逻辑并将值放在数组中:

$scope.days = [4,7]