繁体   English   中英

如何仅通过数组中定义的索引进行迭代?

[英]How to iterate only through defined indexes in array?

我试图仅通过我在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注销我的数组,它只打印我定义的索引。

将代码替换为对象文字:

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

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

$scope.days = [4,7]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM