>웹 프론트엔드 >JS 튜토리얼 >`return`은 `forEach` 루프의 반복을 중지합니까?

`return`은 `forEach` 루프의 반복을 중지합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-26 18:13:09332검색

Does `return` Stop a `forEach` Loop's Iteration?

return이 forEach 함수의 반복에 어떤 영향을 미치나요?

forEach 함수를 사용할 때 false 값을 반환하면 오류가 발생할 것으로 예상할 수 있습니다. 루프를 종료하고 추가 반복을 중지합니다. 그러나 그렇지 않습니다.

forEach에서 return의 의미

forEach 함수에서 return 키워드는 다른 루프와 다르게 작동합니다. 전체 루프를 중지하는 대신 현재 반복의 결과만 반환합니다.

예:

다음 JavaScript 코드를 고려하세요.

$('button').click(function () {
   [1, 2, 3, 4, 5].forEach(function (n) {
      if (n == 3) {
         // it should break out here and doesn't alert anything after
         return false
      }
      alert(n)      
   })
})

설명:

반복자 함수가 n == 3을 만나면 false를 반환합니다. 이는 전체 루프를 종료하는 것이 아니라 현재 반복이 false를 반환해야 함을 나타냅니다.

반복을 계속하는 이유:

forEach 함수는 반환된 값을 무시하고 계속합니다. 나머지 배열 요소를 반복합니다. 이는 forEach가 반복자 함수의 결과에 관계없이 전체 배열을 반복하도록 설계되었기 때문입니다.

대체 반복 옵션:

중단해야 하는 경우 조건부 루프의 경우 다음과 같은 대체 루프 방법을 사용하는 것이 좋습니다.

  • 간단 루프
  • for...of loop
  • Array.prototype.every()
  • Array.prototype.some()
  • Array.prototype.find()
  • Array.prototype. findIndex()

위 내용은 `return`은 `forEach` 루프의 반복을 중지합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.