angular.js - angular.forEach怎么跳出循环
滿天的星座
滿天的星座 2017-05-15 16:54:21
0
4
932

如题,angular.forEach怎么做可以跳出循环?

滿天的星座
滿天的星座

Antworte allen(4)
大家讲道理

先来回答你的问题:

forEach是不能跳出循环的

在绝大多数编程语言中,foreach不仅仅是语法糖,通过编译优化它可以提供更好的性能,比如直接略去边界检查。为了能更好地做到这些优化,foreach在设计上也给出了制约。例如在C#中,迭代过程不允许更改容器本身(增删元素),不允许break(我们知道,所有的条件语句都会降低指令缓存和流水线的性能)。

Angular包装了一系列的原生JS方法,为的是能够更好地监听模型变化。这些JS方法的使用方式和原来基本没有区别。你说的forEach就是一个,还有$timeout等等。关于Angular的数据绑定方式可以看这个:http://harttle.com/2015/06/06/angular-data-binding-and-digest.html

Ty80

http://stackoverflow.com/a/13844508/2586541


var keepGoing = true;
angular.forEach([0,1,2], function(count){
  if(keepGoing) {
    if(count == 1){
      keepGoing = false;
    }
  }
});
仅有的幸福

Js原生的forEach和jquery的each是这样的,return true,中断后面的操作,继续遍历到下一个操作,类似continue;return false,结束整个遍历,类似break
Angular不太清楚,楼主可以试试,这种语法糖应该都差不多的。

世界只因有你

@harttle 那循环的数据太大的时候,不是很影响性能。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage