angular.js-Angular.forEach의 루프를 중단하는 방법
滿天的星座
滿天的星座 2017-05-15 16:54:21
0
4
954

제목처럼 angle.forEach를 사용하여 루프를 벗어나는 방법은 무엇인가요?

滿天的星座
滿天的星座

모든 응답(4)
大家讲道理

먼저 귀하의 질문에 답변해 드리겠습니다.

forEach는 루프에서 벗어날 수 없습니다. forEach是不能跳出循环的。

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

Angular包装了一系列的原生JS方法,为的是能够更好地监听模型变化。这些JS方法的使用方式和原来基本没有区别。你说的forEach就是一个,还有$timeout

대부분의 프로그래밍 언어에서 foreach는 구문 설탕일 뿐만 아니라 경계 검사를 직접 생략하는 등 컴파일 최적화를 통해 더 나은 성능을 제공할 수 있습니다. 이러한 최적화를 더 잘 달성하기 위해 foreach는 디자인 제약 조건도 제공합니다. 예를 들어 C#에서 반복 프로세스는 컨테이너 자체에 대한 변경(요소 추가 또는 삭제)을 허용하지 않으며 중단도 허용되지 않습니다(우리는 모든 조건문이 명령 캐시 및 파이프라인의 성능을 감소시킨다는 것을 알고 있습니다). 🎜 🎜Angular는 모델 변경 사항을 더 잘 모니터링하기 위해 일련의 기본 JS 메서드를 래핑합니다. 이러한 JS 메서드의 사용법은 기본적으로 이전과 동일합니다. 말씀하신 forEach는 1개이고, $timeout 등도 있습니다. Angular의 데이터 바인딩 방법에 대한 자세한 내용은 http://harttle.com/2015/06/06/angular-data-bound-and-digest.html🎜을 참조하세요.
Ty80

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


으아악
仅有的幸福

Js의 기본 forEach와 jquery는 각각 다음과 같습니다. true를 반환하고 후속 작업을 중단하고 계속해서 false를 반환하고 전체 탐색을 종료합니다. Angular에 대해 잘 모르겠습니다. 이런 종류의 구문 설탕은 비슷할 것입니다.

世界只因有你

@harttle 반복되는 데이터가 너무 크면 성능에 큰 영향을 미치지 않습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿