Short Circuit Array.forEach: 대체 중단 방법 탐색
기존 프로그래밍 패러다임에서 break 문을 사용하면 루프 또는 제어를 즉시 종료할 수 있습니다. 흐름 블록. 그러나 JavaScript의 새로운 forEach 메서드에는 해당 메서드가 내장되어 있지 않습니다. 이는 질문을 제기합니다. forEach 컨텍스트 내에서 break 동작을 어떻게 복제할 수 있습니까?
return, return false 또는 break를 사용하여 수동 중단을 구현하려는 이전 시도는 성공하지 못한 것으로 입증되었습니다. Return은 반복을 중단하지 않으며 break는 런타임 오류를 발생시킵니다.
다행히도 예외 처리를 활용하는 대체 솔루션이 있습니다. 사용자 정의 예외를 발생시키면 forEach 루프를 효과적으로 단락시킬 수 있습니다. 예는 다음과 같습니다.
var BreakException = {}; try { [1, 2, 3].forEach(function(el) { console.log(el); if (el === 2) throw BreakException; }); } catch (e) { if (e !== BreakException) throw e; }
원하는 조건이 충족되면 사용자 정의 예외 BreakException이 인스턴스화되어 forEach 콜백 내에서 발생합니다. 이로 인해 try 블록이 실행을 중단하고 catch 블록으로 진행하여 루프가 효과적으로 중단됩니다. 예기치 않은 동작을 방지하려면 catch 블록 내에서 BreakException 이외의 오류를 처리하는 것이 중요합니다.
위 내용은 JavaScript forEach 루프를 단락시키는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!