2017-04-06 11 views
6

나는 Underscore와 Lodash 라이브러리의 차이점을보고 있었고 _.each/_.forEach와 관련된 한 가지 문제가있었습니다.Lodash forEach에서 "계속"

밑줄에서 _.each 함수는 루핑을 벗어날 수 없습니다. false를 사용하면 "continue"문으로 만 작동합니다. (내 경우 의도 된 기능) = 그것은 루프의 다음 반복을 수행하여 그 사이의 모든 코드를 건너 뜁니다.

반면에 Lodash에서는 false를 반환하면 _.forEach()에이 반복이 마지막임을 알립니다. Lodash에서 "계속"동작을 기능화 할 수있는 방법이 있습니까?

감사합니다.

답변

14

반면에 Lodash에서는 false를 반환하면 _.forEach()에이 반복이 마지막임을 알립니다. Lodash에서 "계속"동작을 기능화 할 수있는 방법이 있습니까?

당신은 true를 반환하거나 하나의 return (undefined을 반환),이 값이 에 대한 needed false 다르다 "명시 적으로 false을 반환하여 조기 종료 반복."수

_.forEach([1, 2, 3, 4, 5], function (a) { 
 
    if (a < 3) return;  // continue 
 
    console.log(a); 
 
    if (a > 3) return false; // break 
 
    // return undefined;  // continue, undefined is the standard value of ending a function 
 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>