개발/Javascript

[JAVASCRIPT] recude 반복 중지 break 하기

반응형

서론

개발하면서 자주 사용하던 reduce를 쓰면서 반복을 중지할 때가 간혹 있는데 그것을 정리하고자 한다.

데이터

let reduceList = [...this.items];

let checkData = reduceList.reduce((acc, obj) => {
  // 5번째 데이터를 가져오는 조건
  if(obj.value === 5) {
    acc = obj;
    reduceList.splice(1);
  }
  return acc;
}, {});

 

확인 사항

1. 기준되는 items를 깊은 복사하여 reduceList 생성

2. reduceList 를 reduce 하여 조건 체크

3. 조건에 맞을시 reduce 반복을 break 하기위해  splice를 사용하여 reduceList 길이를 1로 핸들링(ex. reduceList.splice(1))

 

!! 여기서 중요한 점은 기준 데이터에 영향이 없도록 깊은 복사하여 처리를 해야합니다.

 

 

결론

자주 사용하는 reduce지만 조금이라도 속도개선을 고려하고자 정리합니다.

반응형