forEach 함수 내부의 return 동작 이해
JavaScript에서는 종종 forEach 함수 내 return 키워드의 동작에 대해 오해가 있습니다. . 이 문서에서는 의도된 사용법을 명확히 하는 것을 목표로 합니다.
다음 코드 조각을 고려하세요.
$('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); }); });
이 코드에서는 forEach 루프 내에서 return 문을 사용하여 반복을 조기에 중지합니다. 그러나 코드는 계속해서 배열의 후속 요소에 경고를 보냅니다. 왜 이런 일이 발생합니까?
forEach에서 return의 진정한 특성
일반적인 믿음과는 달리 forEach 함수 내의 return 문은 이전 버전과 다른 의미를 갖습니다. for 또는 while과 같은 루프 구성. forEach에서 반환은 루프의 조기 종료를 의미하지 않습니다.
Mozilla 개발자 네트워크 설명
공식 Mozilla 개발자 네트워크 문서에 따르면:
"예외를 발생시키는 것 외에는 forEach() 루프를 중지하거나 중단할 수 있는 방법이 없습니다. forEach() 메서드는 잘못된 도구입니다."
대체 접근 방식
루프의 반복을 조건부로 중지하는 것이 목표라면 대안이 있습니다. 사용 가능한 방법:
위 내용은 JavaScript에서 `return`이 `forEach` 루프를 중단하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!